如何在 php CLI 客户端共享数据? 我已经创建了 swoole WebSocket Server,它在 CLI 模式下运行。我想保存套接字信息。
但是每次保存的全局变量只有最后一次客户端信息。 有没有办法在 CLI 模式下共享像 $_SESSION 这样的数据?我尝试了 $_SERVER 和 $GLOBALS,但我做不到。
如何在 php CLI 客户端共享数据? 我已经创建了 swoole WebSocket Server,它在 CLI 模式下运行。我想保存套接字信息。
但是每次保存的全局变量只有最后一次客户端信息。 有没有办法在 CLI 模式下共享像 $_SESSION 这样的数据?我尝试了 $_SERVER 和 $GLOBALS,但我做不到。
$_GLOBALS 不适用于 swoole,你可以使用 Swoole\Table 共享数据。在创建服务器之前,初始化表以存储您希望共享的数据。
<?php
class Server {
public $table;
public __construct()
{
//initialize server code
...
//initialize table
$this->table = new Swoole\Table(1024);
$this->table->column('name', Table::TYPE_STRING, 4);
//other column
$this->table->create();
$this->table->set('user', ['name' => 'Bob']);
//get user
$this->table->get('user');
}
}