(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_ccl_parse — Invoke CCL Parser
$id
, string $query
, array &$result
) : boolThis function invokes a CCL parser. It converts a given CCL FIND query to an RPN query which may be passed to the yaz_search() function to perform a search.
To define a set of valid CCL fields call yaz_ccl_conf() prior to this function.
id
The connection resource returned by yaz_connect().
query
The CCL FIND query.
result
If the function was executed successfully, this will be an array
containing the valid RPN query under the key rpn
.
Upon failure, three indexes are set in this array to indicate the cause of failure:
errorcode
- the CCL error code (integer)
errorstring
- the CCL error string
errorpos
- approximate position in query of failure
(integer is character position)
成功时返回 true
, 或者在失败时返回 false
。
Example #1 CCL Parsing
We will try to search using CCL. In the example below,
$ccl
is a CCL query.
<?php
yaz_ccl_conf($id, $fields); // see example for yaz_ccl_conf
if (!yaz_ccl_parse($id, $ccl, &$cclresult)) {
echo 'Error: ' . $cclresult["errorstring"];
} else {
$rpn = $cclresult["rpn"];
yaz_search($id, "rpn", $rpn);
}
?>