8.145 YAZ
8 Référence des fonctions
Manuel PHP
. Introduction . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . Exemples . yaz_addinfo . yaz_ccl_conf . yaz_ccl_parse . yaz_close . yaz_connect . yaz_database . yaz_element . yaz_errno . yaz_error . yaz_es_result . yaz_get_option . yaz_hits . yaz_itemorder . yaz_present . yaz_range . yaz_record . yaz_scan_result ->yaz_scan . yaz_schema . yaz_search . yaz_set_option . yaz_sort . yaz_syntax . yaz_wait
|
8.145.24 yaz_scan()Prépare un scan[ Exemples avec yaz_scan ] PHP 4 >= 4.0.5, PECL
void
yaz_scan (
resource
id
,
string
type
,
string
startterm
,
array
flags
)
Cette fonction prépare une requête "Z39.50 Scan Request" sur la connexion
spécifiée.
Pour actuellement transférer la requête "Scan Request" au serveur et
recevoir le "Scan Response",
yaz_wait
doit être
appelée. Après la fin de
yaz_wait
, appelez
yaz_error
et
yaz_scan_result
pour
gérer la réponse.
-
id
-
La ressource de connexion retournée par
yaz_connect
.
-
type
-
Présentement seulement le type
rpn
est supporté.
-
startterm
-
Point de départ pour le 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 additionnelles pour
contrôler le comportement de la requête de scan. Trois index sont
présentement lus à partir du tableau flags :
number
(nombre de termes demandés),
position
(position préférée du terme) et
stepSize
(grandeur de pas préférée).
Aucune valeur n'est retournée.
| Fonction PHP qui scanne 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 "; } 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 />"; } } ?>
|
|