Services webmasters
Partenaires
Jeux concours gratuits
 
yaz_scan_result
<<<
yaz_scan yaz_schema
>>>

7.112 YAZ
7 Index des fonctions
 Manuel PHP

Introduction
Installation
Configuration à l'exécution
Types de ressources
Constantes prédefinies
Exemples
yaz_addinfo
yaz_ccl_conf
yaz_ccl_parse
yaz_close
yaz_connect
yaz_database
yaz_element
yaz_errno
yaz_error
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

7.112.23 yaz_scan()Prépare un scan

[ Exemples avec yaz_scan ]   PHP 4 >= 4.0.5

int  yaz_scan ( resource   id , string   type , string   startterm , array   flags )

yaz_scan prépare une requête "Z39.50 Scan Request". id spécifie l'hôte cible. Le point de départ est donné avec startterm . La forme de spécification du point de départ est donné par type . Actuellement, le type rpn est supporté. Le paramètre optionnel flags donne des informations supplémentaires pour contrôler le comportement de la requête de scan. Actuellement, trois index sont lus dans ce paramètre : number (nombre de termes requis), position (position préférée du terme) et stepSize (taille du pas préférée). Pour réellement envoyer la requête de recherche à l'hôte, et recevoir la réponse, yaz_wait doit être appelée. A la fin de yaz_wait , yaz_error et yaz_scan_result auront les résultats.

La syntaxe de startterm est similaire aux requêtes RPN, décrites dans yaz_search . startterm est constitué de zéro ou plus spécifications, avec les opérateurs @attr , suivi par exactement un token.

Fonction PHP qui scanne les titres sur un serveur YAZ

<?php
  
function scan_titles($id, $starterm) {
    
yaz_scan($id,"rpn", "@attr 1=4 " . $starterm);
    
yaz_wait();
    
$errno = yaz_errno($id);
    if (
$errno == 0) {
      
$ar = yaz_scan_result($id,&$options);
      echo
'Scan réussi; ';
      
$ar = yaz_scan_result($id, &$options);
      while(list(
$key,$val)=each($options)) {
         echo
"$key = $val &nbsp;";
      }
      echo
'<br><table><tr><td>';
      while(list(
$key,list($k, $term, $tcount))=each($ar)) {
        if (empty(
$k)) continue;
        echo
"<tr><td>$term</td><td>";
        echo
$tcount;
        echo
"</td></tr>";
      }
      echo
'</table>';
    } else {
      echo
"Echec du scan. Erreur: " . yaz_error(
<< yaz_scan >>
yaz_scan_result YAZ yaz_schema

Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -