connections
विवरण:
array Worker::$connections
फॉर्मेट इस प्रकार है
array(id=>connection, id=>connection, ...)
इस प्रॉपर्टी में वर्तमान प्रक्रिया के सभी क्लाइंट कनेक्शन ऑब्जेक्ट्स संग्रहीत होते हैं, जिसमें id कनेक्शन का id नंबर है, विस्तृत जानकारी के लिए देखें TcpConnection का id प्रॉपर्टी。
$connections ब्रॉडकास्ट करते समय या कनेक्शन id के अनुसार कनेक्शन ऑब्जेक्ट प्राप्त करने में बहुत सहायक है।
अगर कनेक्शन का नंबर $id मालूम हो, तो आप आसानी से $worker->connections[$id] के माध्यम से संबंधित कनेक्शन ऑब्जेक्ट प्राप्त कर सकते हैं और संबंधित सॉकेट कनेक्शन को ऑपरेट कर सकते हैं, जैसे कि $worker->connections[$id]->send('...') के जरिए डेटा भेजना।
ध्यान दें: यदि कनेक्शन बंद हो जाता है (onClose ट्रिगर करता है), तो संबंधित connection को $connections एरे से हटा दिया जाएगा।
ध्यान दें: डेवलपर्स को इस प्रॉपर्टी में संशोधन नहीं करना चाहिए, अन्यथा अनपेक्षित स्थिति उत्पन्न हो सकती है।
उदाहरण
use Workerman\Worker;
use Workerman\Timer;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('text://0.0.0.0:2020');
// प्रक्रिया शुरू होने पर एक टाइमर सेट करें, जो सभी क्लाइंट कनेक्शनों को डेटा भेजे
$worker->onWorkerStart = function($worker)
{
// समय-समय पर, हर 10 सेकंड में
Timer::add(10, function()use($worker)
{
// वर्तमान प्रक्रिया के सभी क्लाइंट कनेक्शन का दौरा करें, और वर्तमान सर्वर का समय भेजें
foreach($worker->connections as $connection)
{
$connection->send(time());
}
});
};
// वर्कर चलाएं
Worker::runAll();