yaz_ccl_parse

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

yaz_ccl_parse调用 CCL 解析器

说明

yaz_ccl_parse(resource $id, string $query, array &$result): bool

此函数调用 CCL 解析器。它将给定的 CCL FIND 查询转换为 RPN 查询,该查询可以传递给 yaz_search() 函数以执行搜索。

要定义一组有效的 CCL 字段,请在调用此函数之前调用 yaz_ccl_conf()

参数

id

yaz_connect() 返回的连接资源。

query

CCL FIND 查询。

result

如果函数执行成功,则将是一个包含有效 RPN 查询的数组,其键为 rpn

如果失败,将在该数组中设置三个索引以指示失败的原因

  • errorcode - CCL 错误代码(整数)

  • errorstring - CCL 错误字符串

  • errorpos - 查询中失败的大致位置(整数为字符位置)

返回值

如果成功,则返回 true,如果失败,则返回 false

示例

示例 #1 CCL 解析

我们将尝试使用 CCL 进行搜索。在下面的示例中,$ccl 是一个 CCL 查询。

<?php

yaz_ccl_conf
($id, $fields); // 请参见 yaz_ccl_conf 的示例
if (!yaz_ccl_parse($id, $ccl, &$cclresult)) {
echo
'Error: ' . $cclresult["errorstring"];
} else {
$rpn = $cclresult["rpn"];
yaz_search($id, "rpn", $rpn);
}
?>
添加说明

用户贡献说明

此页面没有用户贡献的说明。
To Top