This library contains a PHP implementation of JSON-RPC version 2. This libraray implements both a client and a server.
Download the contents of the lib folder to your project. Then simply include
the appropriate library:
include "lib/Server.php";
include "lib/Client.php";$server = new Lightbulb\Json\Rpc2\Server;
// Add functions to the server object to make them callable remotely
// Built in PHP functions or user functions
$server->upper = 'strtoupper';
$server->getID = 'findUserID';
// Class based: All public methods in MyClass are exposed as user.method
$server->user = new MyClass;
// Receive and process any incoming RPC calls
$server->handle();More information in advanced options docs.
Newer PHPs warn about creating dynamic properties on classes. If you add class
methods to your server you will need to add #[\AllowDynamicProperties]
before the class definition to work around this error.
$url = 'http://api.domain.com/endpoint';
$client = new Lightbulb\Json\Rpc2\Client($url);
$str = $client->upper("kitten");
$id = $client->getID("Jason Doolis");$ok = $client->user->mail->login($user, $pass); // Maps to 'user.mail.login'Licensed under the New BSD License. Copyright 2011 Pavel Ptacek. All rights reserved.