函数名:yaz_scan()
适用版本:PHP 4 >= 4.0.1, PHP 5, PHP 7
用法:yaz_scan() 函数用于获取给定的记录集中的下一条记录。
语法:string yaz_scan(resource $id, string $type)
参数:
- $id:yaz_connect() 返回的连接资源。
- $type:记录集类型。可选值为 "P"(预定义记录集)或 "S"(可检索记录集)。
返回值:返回获取到的记录。
示例:
// 创建连接
$target = "localhost:9999"; // 替换为实际的 Z39.50 服务器地址
$conn = yaz_connect($target);
// 检查连接是否成功
if (!$conn) {
die("无法连接到 Z39.50 服务器");
}
// 搜索记录集
$query = "作者=John"; // 替换为实际的搜索条件
$setname = "bibliographic"; // 替换为实际的记录集名称
$options = array("start" => 1, "count" => 10); // 替换为实际的选项参数
$searchResult = yaz_search($conn, "rpn", $query);
// 检查搜索结果是否有效
if (yaz_hits($searchResult) > 0) {
// 获取记录
$record = yaz_scan($searchResult, "P");
// 输出记录
echo $record;
} else {
echo "未找到匹配的记录";
}
// 关闭连接
yaz_close($conn);
以上示例演示了如何使用 yaz_scan()
函数获取 Z39.50 服务器上指定条件的记录集的下一条记录。首先,通过 yaz_connect()
函数创建与服务器的连接。然后,使用 yaz_search()
函数搜索指定条件的记录集。如果搜索结果有效(即命中记录数大于0),则使用 yaz_scan()
函数获取下一条记录并输出。最后,使用 yaz_close()
函数关闭连接。请注意,示例中的参数和选项需要根据实际情况进行替换。