(PECL yar >= 1.0.0)
Yar_Concurrent_Client::call — 註冊併發呼叫
$uri
,$method
,$parameters
= ?,$callback
= ?,$error_callback
= ?,$options
= ?註冊一個 RPC 呼叫,但不會立即發送,它會在之後呼叫 Yar_Concurrent_Client::loop() 時發送。
uri
RPC 伺服器 URI (http, tcp)
method
服務名稱(也就是方法名稱)
parameters
參數
參數
error_callback
options
回傳值
<?php
function callback($retval, $callinfo) {
var_dump($retval);
}
function error_callback($type, $error, $callinfo) {
error_log($error);
}
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback");
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters")); // 若未指定回呼函式,
// 則會使用迴圈中的回呼函式
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
//此伺服器接受 json 封包格式
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));
//自訂逾時
//請求尚未發送
?>
以上範例會輸出類似以下的內容