YAZ Fonctions
PHP Manual

yaz_scan

(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)

yaz_scanPrépare un scan YAZ

Description

void yaz_scan ( resource $id , string $type , string $startterm [, array $flags ] )

yaz_scan() prépare une requête "Z39.50 Scan Request" sur la connexion YAZ spécifiée.

Pour réellement transférer la requête "Scan Request" au serveur et recevoir le "Scan Response", la fonction yaz_wait() doit être appelée. Après la fin de yaz_wait(), appelez yaz_error() et yaz_scan_result() pour connaître la réponse.

Liste de paramètres

id

La ressource de connexion retournée par yaz_connect().

type

Actuellement seulement le type rpn est supporté.

startterm

Point de départ du scan.

La forme dans laquelle le terme de départ est spécifié est donnée par le paramètre type .

La syntaxe de ce paramètre est similaire à la requête RPN comme décrite dans yaz_search(). Cela consiste à aucune ou plusieurs spécifications d'opérateur @attr, ensuite suivies par exactement une seule marque.

flags

Ce paramètre optionnel spécifie des informations supplémentaires pour contrôler le comportement de la requête de scan. Trois index sont actuellement lus à partir du tableau d'options : number (nombre de termes demandés), position (position préférée du terme) et stepSize (grandeur de pas préférée).

Valeurs de retour

Aucune valeur n'est retournée.

Exemples

Exemple #1 Fonction PHP qui analyse les titres sur un serveur YAZ

<?php
function scan_titles($id$startterm)
{
  
yaz_scan($id"rpn""@attr 1=4 " $startterm);
  
yaz_wait();
  
$errno yaz_errno($id);
  if (
$errno == 0) {
    
$ar yaz_scan_result($id$options);
    echo 
'Scan ok; ';
    foreach (
$options as $key => $val) {
      echo 
"$key = $val &nbsp;";
    }
    echo 
'<br /><table>';
    while (list(
$key, list($k$term$tcount)) = each($ar)) {
      if (empty(
$k)) continue;
      echo 
"<tr><td>$term</td><td>$tcount</td></tr>";
    }
    echo 
'</table>';
  } else {
    echo 
"Erreur de Scan. Erreur : " yaz_error($id) . "<br />";
  }
}
?>


YAZ Fonctions
PHP Manual