yaz_scan

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

yaz_scan准备扫描

描述

yaz_scan(
    资源 $id,
    字符串 $type,
    字符串 $startterm,
    数组 $flags = ?
):

此函数准备在指定的连接上执行 Z39.50 扫描请求。

要实际将扫描请求传输到服务器并接收扫描响应,必须调用 yaz_wait()。完成 yaz_wait() 调用后,yaz_error()yaz_scan_result() 用于处理响应。

参数

id

yaz_connect() 返回的连接资源。

type

目前仅支持 rpn 类型。

startterm

扫描的起始术语点。

指定起始术语的形式由参数 type 决定。

此参数的语法类似于 yaz_search() 中描述的 RPN 查询。它包含零个或多个 @attr 运算符规范,然后紧跟着一个标记。

flags

此可选参数指定用于控制扫描请求行为的附加信息。目前从 flags 数组中读取三个索引:number(请求的术语数量)、position(术语的首选位置)和 stepSize(首选步长)。

返回值

不返回值。

示例

示例 #1 扫描标题的 PHP 函数

<?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
"Scan failed. Error: " . yaz_error($id) . "<br />";
}
}
?>

添加笔记

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top