(PECL yar >= 1.0.0)
Yar_Concurrent_Client::call — Register a concurrent call
$uri
, string $method
, array $parameters
[, callable $callback
] )Register a RPC call, but won't sent it immediately, it will be send while further call to Yar_Concurrent_Client::loop()
uriThe RPC server URI(http, tcp)
methodService name(aka the method name)
parametersParameters
callbackA function callback, which will be called while the response return.
An unique id, can be used to identified which call it is.
Example #1 Yar_Concurrent_Client::call() example
<?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")); // if the callback is not specificed,
// callback in loop will be used
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
//this server accept json packager
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));
//custom timeout
//The requests are not sent yet
?>
Il precedente esempio visualizzerĂ qualcosa simile a: