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.22 yaz_record()Retourne un résultat[ Exemples avec yaz_record ] PHP 4 >= 4.0.1, PECL
string
yaz_record (
resource
id
,
int
pos
,
string
type
)
La fonction
yaz_record
retourne un enregistrement dans
le jeu de résultats courant à la position spécifiée par le paramètre
pos
.
-
id
-
La ressource de connexion retournée par
yaz_connect
.
-
pos
-
La position de l'enregistrement. Les positions des enregistrements dans
un jeu de résultats sont numérotées 1, 2, ... $hits ou $hits est le
nombre retourné par
yaz_hits
.
-
type
-
Le
type
spécifie la forme du résultat retourné.
| Note | |
C'est l'application qui est responsable pour assurer que les résultats
retournés à partir du serveur Z39.50/SRW sont dans un format correct.
Le type donné spécifie seulement une conversion qui doit avoir lieu
sur le côté client (dans PHP/YAZ).
|
Sans compter la conversion du transfert de résultats de chaîne de
caractères à tableau, PHP/YAZ est aussi possible d'effectuer une
conversion de jeu de caractères du résultat. En particulier pour
USMARC/MARC21 qui est recommandé puisque ces résultats sont normalement
retournés dans le jeu de caractères MARC-8 qui n'est pas supporté par
les navigateurs, etc. Pour spécifier une conversion, ajouté
;
charset=
from
,
to
ou
from
est le
jeu de caractères orignal du résultat et
to
est le jeu de résultats à obtenir (comme vu par PHP).
-
string
-
L'enregistrement est retourné comme une chaîne de caractères pour
affichage simple. Dans ce mode, tous les enregistrements MARC sont
convertis dans un format ligne-par-ligne puisque ISO2709 est
difficile à lire. Les enregistrements XML et SUTRS sont retournés
dans leur format original. GRS-1 est retourné dans un format
ligne-par-ligne (laid).
Ce format est approprié si les enregistrements seront affichés
rapidement - pour débogage - ou parce que ce n'est pas faisable
d'effectuer un affichage approprié.
-
xml
-
L'enregistrement est retourné comme une chaîne de caractères XML si
possible. Dans ce mode, tous les enregistrements MARC sont convertis
en MARCXML .
Les enregistrements XML et SUTRS sont retournés dans leur format
original. GRS-1 n'est pas supporté.
Ce format est similaire à
string
à l'exception
que les enregistrements MARC sont convertis en MARCXML
Ce format est approprié si les enregistrements sont analysés par la
suite par un analyseur XML ou un processeur XSLT.
-
raw
-
L'enregistrement est retourné comme une chaîne de caractères dans sa
forme originale. Ce type est approprié pour MARC, XML et SUTRS. Il
ne fonctionne pas pour GRS-1.
Les enregistrements MARC sont retournés comme une chaîne de
caractères ISO2709. XML et SUTRS sont retournés comme des chaînes de
caractères.
-
syntax
-
La syntaxe de l'enregistrement est retournée comme une chaîne de
caractères, par exemple
USmarc
,
GRS-1
,
XML
, etc.
-
database
-
Le nom de la base de données associée aux résultats à la position est
retourné comme une chaîne de caractères.
-
array
-
L'enregistrement est retourné comme un tableau qui réfléchit la
structure GRS-1. Ce type est approprié pour MARC et GRS-1. XML,
SUTRS ne sont pas supportés et si l'enregistrement actuel est XML ou
SUTRS, une chaîne de caractères vide sera retournées.
Le tableau retourné consiste en une liste correspondant à chaque
feuille/noeud interne de GRS-1. Chaque item de la liste consiste à
une sous-liste avec le premier élément
path
et
data
(si les données sont disponibles).
Le chemin, qui est une chaîne de caractères, contient une liste de chaque composant
de l'arbre (de la structure des enregistrements GRS-1) depuis la racine vers l'extrémité.
Chaque composant est une paire de type de balise / valeur sous la forme
(
type
,
value
Les tags de chaîne de caractères ont normalement une correspondance
avec le type tag 3. MARC peut aussi être retourné comme un tableau
(ils sont convertis en GRS-1 internement).
Retourne l'enregistrement à la position
pos
ou une
chaîne vide si aucun enregistrement n'existe à la position donnée.
Si aucun enregistrement de base de données n'existe à la position donnée une
chaîne vide est retournée.
| Tableau pour des enregistrements GRS-1 | |
Considérez les enregistrements GRS-1
(4,52)Robert M. Pirsig
(4,70)
(4,90)
(2,7)Transworld Publishers, ltd.
Cet enregistrement a deux noeuds à la racine.
Le premier élément de la racine est (4,52) [tag type 4, tag value 52],
et a comme donnée
Robert M. Pirsig
.
Le deuxième élément de la racine (4,70) a un sous-arbre avec un élément simple (4,90).
(4,90) a maintenant un sous-arbre (2,7) avec comme donnée
Transworld Publishers,
ltd.
.
|
| Travail avec MARCXML | |
Le script PHP ci-dessous retourne un enregistrement MARC21/USMARC
comme MARCXML. L'enregistrement original est retourné dans le jeu de caractères
marc-8 (inconnu de beaucoup d'analyseur XML), donc nous le convertissons en UTF-8
(que tous les analyseurs XML supportent).
<?php $rec = yaz_record($id, $p, "xml; charset=marc-8,utf-8"); ?>
|
|