当前位置: 首页 > 工具软件 > jsonrpc > 使用案例 >

jsonrpc php使用,php-JsonRPC

冯和硕
2023-12-01

软件简介

JsonRPC 2.0 Client and Server

轻量级 Json-RPC 2.0 客户端和服务端的php扩展,基于 multi_curl +

epoll的并发客户端,依据jsonrpc协议规范。

服务端:

$server = new Jsonrpc_Server();

// style one function variable

$add1 = function($a, $b){

return $a + $b;

};

$server->register('addition1', $add1);

// style two function string

function add2($a, $b){

return $a + $b;

}

$server->register('addition2', 'add2');

// style three function closure

$server->register('addition3', function ($a, $b) {

return $a + $b;

});

//style four class method string

class A

{

static public function add($a, $b)

{

return $a + $b;

}

}

$server->register('addition4', 'A::add');

echo $server->execute();

//output >>>

//{"jsonrpc":"2.0","id":null,"error":{"code":-32700,"message":"Parse error"}}

客户端:

$client = new Jsonrpc_Client(1);

$client->call('http://localhost/server.php', 'addition1', array(3,5));

$client->call('http://localhost/server.php', 'addition2', array(10,20));

$client->call('http://localhost/server.php', 'addition3', array(2,8));

$client->call('http://localhost/server.php', 'addition4', array(6,15));

/* ... */

$result = $client->execute();

var_dump($result);

//output >>>

/*

array(2) {

[0]=>

array(3) {

["jsonrpc"]=>

string(3) "2.0"

["id"]=>

int(110507766)

["result"]=>

int(8)

}

[1]=>

array(3) {

["jsonrpc"]=>

string(3) "2.0"

["id"]=>

int(1559316299)

["result"]=>

int(30)

}

...

}

*/

 类似资料: