La clase Yar_Client

(No version information available, might only be in Git)

Introducción

El lado cliente del framework RPC Yar. Un cliente está vinculado a una única dirección de servicio; invocar sobre él cualquier método no definido emite una llamada remota con ese nombre de método y los argumentos indicados.

Sinopsis de la clase

class Yar_Client {
/* Propiedades */
protected int $_protocol;
protected string $_uri;
protected ?array $_options;
protected bool $_running;
/* Métodos */
final public function __construct(string $uri, ?array $options = null)
public function call(string $method, array $arguments): mixed
public function getOpt(int $name): mixed
public function setOpt(int $name, mixed $value): Yar_Client|bool
}

Propiedades

_protocol

Solo lectura. El protocolo derivado de la dirección del servicio: una de las constantes YAR_CLIENT_PROTOCOL_HTTP, YAR_CLIENT_PROTOCOL_TCP o YAR_CLIENT_PROTOCOL_UNIX.

_uri

Solo lectura. La dirección de servicio con la que se creó el cliente.

_options

Solo lectura. Un array con las opciones establecidas en este cliente, indexado por las constantes YAR_OPT_*, o null si no se estableció ninguna.

_running

Solo lectura. Indica si hay una llamada emitida por este cliente actualmente en curso.

Tabla de contenidos

add a note

User Contributed Notes 1 note

up
-1
porschegt23 at foxmail dot com
10 years ago
A simple example on here:

server.php
<?php
class API {
   
    public function api($parameter = "", $option = "foo") {
          return $this->client_can_not_see($parameter);
    }
 
 
    public function doAdd($a = 0, $b = 0) {
          return $a+$b;
    }
   
    protected function client_can_not_see( $name ) {
      return "你好$name~";
    }
}

$service = new Yar_Server ( new API () );
$service->handle ();
?>
client.php
<?php
  $client = new Yar_Client("http://host/server.php");
  $result = $client->api("parameter");
  echo $result.'<hr>';
  echo $client->doAdd(10, 20);
?>