(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_ccl_parse — 呼叫 CCL 解析器
這個函式會呼叫 CCL 解析器。它會將指定的 CCL FIND 查詢轉換為 RPN 查詢,該查詢可以傳遞給 yaz_search() 函式來執行搜尋。
要在呼叫此函式之前定義一組有效的 CCL 欄位,請呼叫 yaz_ccl_conf()。
id
由 yaz_connect() 返回的連線資源。
query
CCL FIND 查詢。
result
如果函式執行成功,這將是一個陣列,其中包含鍵 rpn
下的有效 RPN 查詢。
失敗時,此陣列中會設定三個索引來指示失敗原因
errorcode
- CCL 錯誤碼(整數)
errorstring
- CCL 錯誤字串
errorpos
- 查詢中失敗的大約位置(整數是字元位置)
範例 #1 CCL 解析
我們將嘗試使用 CCL 進行搜尋。在下面的範例中,$ccl
是一個 CCL 查詢。
<?php
yaz_ccl_conf($id, $fields); // 參見 yaz_ccl_conf 的範例
if (!yaz_ccl_parse($id, $ccl, &$cclresult)) {
echo '錯誤:' . $cclresult["errorstring"];
} else {
$rpn = $cclresult["rpn"];
yaz_search($id, "rpn", $rpn);
}
?>