(PECL yar >= 1.0.0)
Yar_Concurrent_Client::call — Registra uma chamada simultânea
$uri
,$method
,$parameters
= ?,$callback
= ?,$error_callback
= ?,$options
= ?Registra uma chamada RPC, mas não a envia imediatamente, ela será enviada durante uma nova chamada a Yar_Concurrent_Client::loop().
uri
O URI do servidor RPC (http, tcp)
method
Nome do serviço (também conhecido como nome do método)
parameters
Parâmetros
callback
Uma função de retorno, que será chamada enquanto a resposta retorna.
Um ID exclusivo pode ser usado para identificar qual é a chamada.
Exemplo #1 Exemplo de Yar_Concurrent_Client::call()
<?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")); // se a função de retorno não for especificada,
// a função de retorno no loop será usada
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
// este servidor aceita empacotador json
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));
// tempo limite personalizado
// As solicitações ainda não foram enviadas
?>
O exemplo acima produzirá algo semelhante a: