注册异步事件回调函数。
int swoole_client::on(string $event, mixed $callback);
1
为事件类型,支持connect/error/receive/close
4种2
为回调函数,可以是函数名字符串、匿名函数、类静态方法、对象方法。调用
swoole_client->close()
时会自动退出事件循环
UDP
协议的connect
事件在执行完connect
方法后立即被回调UDP
没有close
事件
$client = new swoole_client(SWOOLE_TCP | SWOOLE_ASYNC); //异步非阻塞
$client->on("connect", function($cli) {
$cli->send("hello world\n");
});
$client->on("receive", function($cli, $data) {
echo "received: $data\n";
sleep(1);
$cli->send("hello\n");
});
$client->on("close", function($cli){
echo "closed\n";
});
$client->on("error", function($cli){
exit("error\n");
});
$client->connect('127.0.0.1', 9501, 0.5);