(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_scan — Bir tarama düzenler
$id
, string $tür
, string $başlangıç
[, array $seçenekler
] ) : voidBu işlev belirtilen bağlantı üzerinde bir Z39.50 tarama isteği (Scan Request) düzenler.
Tarama isteğini sunucuya gerçekten aktarmak ve tarama yanıtını almak için yaz_wait() çağrısı yapılmalıdır. yaz_wait() çağrısının tamamlanmasının ardından yanıtı işlemek için yaz_error() ve yaz_scan_result()çağrılır.
id
yaz_connect() tarafından döndürülmüş bağlantı özkaynağı.
tür
Şimdilik sadece rpn türü desteklenmektedir.
startterm
Taramanın başlatılacağı terim.
Başlangıç teriminin biçimi tür
değiştirgesiyle belirtilir.
Bu değiştirgenin sözdizimi yaz_search() işlevindeki RPN sorgusuna benzer. Sıfır veya daha fazla sayıda, tek terimli @attr ifadelerinden oluşur.
seçenekler
Belirtilmesi isteğe bağlı olan bu değiştirge ile tarama isteğinin davranışını belirleyen ek bilgiler belirtilir. Şimdilik seçenekler dizisinden üç anahtar okunmaktadır: number (istenen terim sayısı), position (terimin tercihli konumu) ve stepSize (tercih edilen adım boyu).
Hiçbir değer dönmez.
Örnek 1 - Başlıkları tarayan PHP işlevi
<?php
function scan_titles($id, $başlangıç)
{
yaz_scan($id, "rpn", "@attr 1=4 " . $başlangıç);
yaz_wait();
$errno = yaz_errno($id);
if ($errno == 0) {
$ar = yaz_scan_result($id, $seçenekler);
echo 'Tarama bitti; ';
foreach ($seçenekler as $anahtar => $değer) {
echo "$anahtar = $değer ";
}
echo '<br /><table>';
while (list($anahtar, list($k, $terim, $tsayısı)) = each($ar)) {
if (empty($k)) continue;
echo "<tr><td>$terim</td><td>$tsayısı</td></tr>";
}
echo '</table>';
} else {
echo "Tarama başarısız oldu. Hata: " . yaz_error($id) . "<br />";
}
}
?>