foglcz/jsonrpc2

jsonrpc2 implementation for generic use. Test suite for Nette Framework included.

Installs: 61 119

Dependents: 1

Suggesters: 0

Security: 0

Stars: 19

Watchers: 3

Forks: 10

Open Issues: 2

pkg:composer/foglcz/jsonrpc2

v1.2.1 2020-04-21 18:18 UTC

This package is not auto-updated.

Last update: 2026-01-17 18:53:25 UTC


README

This library contains a PHP implementation of JSON-RPC version 2. This libraray implements both a client and a server.

⛔‼️ Deprecation notice ‼️⛔

As of January 2026 this repository is in archive mode. Furher development of this library will take place here.

Installation

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 example

$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();

Client example

$url    = 'http://api.domain.com/endpoint';
$client = new Lightbulb\Json\Rpc2\Client($url);

$str = $client->upper("kitten");
$id  = $client->getID("Jason Doolis");

Client supports class chaining to call nested methods

$ok = $client->user->mail->login($user, $pass); // Maps to 'user.mail.login'

License

Licensed under the New BSD License. Copyright 2011 Pavel Ptacek. All rights reserved.