GlobalData Variable Sharing Component

(Requires Workerman version >= 3.3.0)

Source code address:


GlobalData requires Workerman version >= 3.3.0


composer require workerman/globaldata


Utilize the PHP magic methods __set __get __isset __unset to trigger communication with the GlobalData server, and the actual variable is stored on the GlobalData server. For example, when setting a non-existent property for a client class, the __set magic method is triggered. The client class sends a request to the GlobalData server in the __set method to store a variable. When accessing a non-existent variable of the client class, the class's __get method is triggered, and the client sends a request to the GlobalData server to read this value, thereby achieving inter-process variable sharing.

require_once __DIR__ . '/vendor/autoload.php';

// Connect to the Global Data server
$global = new GlobalData\Client('');

// Trigger $global->__isset('somedata') to query the server if the value for the key somedata is stored

// Trigger $global->__set('somedata',array(1,2,3)) to notify the server to store the value array(1,2,3) for somedata
$global->somedata = array(1,2,3);

// Trigger $global->__get('somedata') to query the value corresponding to somedata from the server

// Trigger $global->__unset('somedata') to notify the server to delete somedata and its corresponding value