GlobalData Değişken Paylaşım Bileşeni
(Workerman sürümü>=3.3.0 gereklidir)
Kaynak adresi: https://github.com/walkor/GlobalData
Dikkat
GlobalData, Workerman sürümü>=3.3.0 gerektirir.
Kurulum
composer require workerman/globaldata
Prensip
PHP'nin __set __get __isset __unset sihirli yöntemlerini kullanarak GlobalData sunucusu ile iletişim kurmak için tetiklenir, gerçek değişkenler GlobalData sunucusunda saklanır. Örneğin, istemci sınıfına var olmayan bir özellik ayarlandığında, __set sihirli yöntemi tetiklenir ve istemci sınıfı, __set yönteminde GlobalData sunucusuna bir istek gönderir ve bir değişken saklar. İstemci sınıfında var olmayan bir değişkeni erişmeye çalıştığınızda, sınıfın __get yöntemi tetiklenir, istemci GlobalData sunucusuna bir istek gönderir ve bu değeri okur, böylece süreçler arası değişken paylaşımını tamamlar.
require_once __DIR__ . '/vendor/autoload.php';
// Global Data sunucusuna bağlan
$global = new GlobalData\Client('127.0.0.1:2207');
// $global->__isset('somedata') ile sunucuda key olarak somedata'nın değerinin saklanıp saklanmadığını kontrol et
isset($global->somedata);
// $global->__set('somedata',array(1,2,3)) ile sunucuya somedata'nın değerinin array(1,2,3) olduğunu bildirimde bulun
$global->somedata = array(1,2,3);
// $global->__get('somedata') ile sunucudan somedata'nın değerini sorgula
var_export($global->somedata);
// $global->__unset('somedata') ile sunucuya somedata ve ilgili değerini silmesini bildir
unset($global->somedata);