protocol

要求(workerman >= 3.2.7)

说明:

  1. string Worker::$protocol

设置当前Worker实例的协议类。

注:协议处理类可以直接在初始化Worker在监听参数时直接指定。例如

  1. $worker = new Worker('http://0.0.0.0:8686');

范例

  1. use Workerman\Worker;
  2. require_once __DIR__ . '/Workerman/Autoloader.php';
  3. $worker = new Worker('tcp://0.0.0.0:8686');
  4. $worker->protocol = 'Workerman\\Protocols\\Http';
  5. $worker->onMessage = function($connection, $data)
  6. {
  7. var_dump($_GET, $_POST);
  8. $connection->send("hello");
  9. };
  10. // 运行worker
  11. Worker::runAll();

以上代码等价于下面代码

  1. use Workerman\Worker;
  2. require_once __DIR__ . '/Workerman/Autoloader.php';
  3. /**
  4. * 首先会查看用户是否有自定义\Protocols\Http协议类,
  5. * 如果没有使用workerman内置协议类Workerman\Protocols\Http
  6. */
  7. $worker = new Worker('http://0.0.0.0:8686');
  8. $worker->onMessage = function($connection, $data)
  9. {
  10. var_dump($_GET, $_POST);
  11. $connection->send("hello");
  12. };
  13. // 运行worker
  14. Worker::runAll();