(PECL yar >= 1.0.0)
Yar_Concurrent_Client::call — Registrar una llamada concurrente
$uri,$method,$parameters = ?,$callback = ?,$error_callback = ?,$options = ?Registra una llamada RPC, aunque no la envía inmediatamente. Se enviará al llamar a Yar_Concurrent_Client::loop().
uriEl URI del servidor de RPC (HTTP, TCP).
methodEl nombre del servicio (es decir, el nombre del método).
parametersParámetros.
callbackUna retrollamada a una función, la cual será invocada mientras se devuelve la respuesta.
error_callbackoptionsUn ID único que se puede utilizar para identificar la llamada que es.
<?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");
// Si no se especifica la retrollamada, se usará la retrollamada en bucle
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"));
// Este servidor acepta empaquetador JSON
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
// Tiempo de espera personalizado
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT => 1));
// Las peticiones aún no se han enviadoResultado del ejemplo anterior es similar a: