Exemple #1 Exemple de serveur Yar
<?php
/* supposons que cette page est accessible via l'URL http://example.com/operator.php */
class Operator {
    /**
     * Ajout de deux opérandes
     * @param interge 
     * @return interge
     */
    public function add($a, $b) {
        return $this->_add($a, $b);
    }
    /**
     * Sub 
     */
    public function sub($a, $b) {
        return $a - $b;
    }
    /**
     * Mul
     */
    public function mul($a, $b) {
        return $a * $b;
    }
    /**
     * Les méthodes protégées ne seront pas exposées
     * @param interge 
     * @return interge
     */
    protected function _add($a, $b) {
        return $a + $b;
    }
}
$server = new Yar_Server(new Operator());
$server->handle();
?>
Exemple #2 Accès au serveur depuis un navigateur (requête GET)
Résultat de l'exemple ci-dessus est similaire à :
 
   Exemple #3 Exemple de client Yar
<?php
$client = new yar_client("http://example.com/operator.php");
/* Appel direct */
var_dump($client->add(1, 2));
/* Appel via un appel */
var_dump($client->call("add", array(3, 2)));
/* la méthode __add ne peut être appelée */
var_dump($client->_add(1, 2));
?>
Résultat de l'exemple ci-dessus est similaire à :
int(3) int(5) PHP Fatal error: Uncaught exception 'Yar_Server_Exception' with message 'call to api Operator::_add() failed' in *
Exemple #4 Exemple de client Yar concurrent
<?php
function callback($ret, $callinfo) {
    echo $callinfo['method'] , " result: ", $ret , "\n";
}
/* enregistre l'appel async aux services distants */
Yar_Concurrent_Client::call("http://example.com/operator.php", "add", array(1, 2), "callback");
Yar_Concurrent_Client::call("http://example.com/operator.php", "sub", array(2, 1), "callback");
Yar_Concurrent_Client::call("http://example.com/operator.php", "mul", array(2, 2), "callback");
/* envoi toutes les requêtes et attend les réponses */
Yar_Concurrent_Client::loop();
?>
Résultat de l'exemple ci-dessus est similaire à :
mul result: 4 sub result: 1 add result: 3