此範例中的 $result=yaz_es_result($id) 是錯誤的
$result=yaz_es_result($con)
(PECL yaz >= 0.9.0)
yaz_es — 準備擴展服務請求
此函式用於準備擴展服務請求。擴展服務是各種 Z39.50 功能的集合,例如記錄更新、項目訂購、資料庫管理等。
注意:
許多 Z39.50 伺服器不支援擴展服務。
yaz_es() 函式會建立一個延伸服務請求套件,並將其放入操作佇列中。使用 yaz_wait() 將請求發送到伺服器。在 yaz_wait() 完成後,預期會透過呼叫 yaz_es_result() 取得延伸服務操作的結果。
id
由 yaz_connect() 返回的連線資源。
type
一個字串,表示延伸服務的類型:itemorder
(項目訂購)、create
(建立資料庫)、drop
(刪除資料庫)、commit
(提交操作)、update
(更新記錄)、xmlupdate
(XML 更新)。以下章節將說明每種類型。
args
一個包含延伸服務選項以及套件特定選項的陣列。這些選項與 ZOOM C 的 C API 中提供的選項相同。請參考 ZOOM » 延伸服務。
不返回任何值。
範例 #1 記錄更新
<?php
$con = yaz_connect("myhost/database");
$args = array (
"record" => "<gils><title>some title</title></gils>",
"syntax" => "xml",
"action" => "specialUpdate"
);
yaz_es($con, "update", $args);
yaz_wait();
$result = yaz_es_result($id);
?>