(PECL yar >= 1.0.0)
Yar_Concurrent_Client::call — Enregistre un appel concurrent
$uri,$method,$parameters = ?,$callback = ?,$error_callback = ?,$options = ?Enregistre un appel RPC, mais ne l'envoie pas immédiatement ; il sera envoyé pendant l'appel à la méthode Yar_Concurrent_Client::loop().
uriL'URI du serveur RPC (HTTP, TCP).
methodNom du service (i.e. le nom de la méthode).
parametersParamètres.
callbackUne fonction de rappel, qui sera appelée par le retour de la réponse.
error_callbackoptionsUn ID unique ; peut être utilisé pour identifier l'appel.
<?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 la fonction de rappel n'est pas spécifiée, la fonction de rappel de la boucle sera utilisée
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"));
// Ce serveur accepte le packager JSON
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
// Délai d'attente maximal personnalisé
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT => 1));
// Les requêtes ne sont pas envoyées pour le momentRésultat de l'exemple ci-dessus est similaire à :