Componente di Condivisione di Variabili GlobalData
(Richiede Workerman versione >=3.3.0)
Sorgente: https://github.com/walkor/GlobalData
Attenzione
GlobalData richiede Workerman versione >=3.3.0
Installazione
composer require workerman/globaldata
Principio
Utilizza i metodi magici di PHP __set __get __isset __unset per attivare la comunicazione con il server GlobalData, memorizzando effettivamente le variabili presso il server GlobalData. Ad esempio, quando si imposta una proprietà inesistente per una classe client, verrà attivato il metodo magico __set, che invierà una richiesta al server GlobalData per memorizzare una variabile. Quando si accede a una variabile inesistente della classe client, verrà attivato il metodo __get della classe, e il client invierà una richiesta al server GlobalData per leggere questo valore, completando così la condivisione di variabili tra processi.
require_once __DIR__ . '/vendor/autoload.php';
// Connessione al server Global Data
$global = new GlobalData\Client('127.0.0.1:2207');
// Attiva $global->__isset('somedata') per verificare se il server ha memorizzato il valore con chiave somedata
isset($global->somedata);
// Attiva $global->__set('somedata',array(1,2,3)) per notificare al server di memorizzare il valore corrispondente a somedata come array(1,2,3)
$global->somedata = array(1,2,3);
// Attiva $global->__get('somedata') per interrogare il server riguardo al valore corrispondente a somedata
var_export($global->somedata);
// Attiva $global->__unset('somedata') per notificare al server di eliminare somedata e il valore corrispondente
unset($global->somedata);