因为swoole提供了一套对socket客户端的封装,同步阻塞的swoole_client可以用于php-fpm或者apache环境。同时swoole的大部分模块都只能运行在CLI模式下,但是对于面向web的应用怎么办?所以,swoole_client是我们与服务端交互的一个重要方法。本文就以swoole_client来教大家怎么模拟客户端
新建一个Client.php文件。
代码如下:
// 创建一个同步阻塞的tcp socket
// 第一个参数是表示socket的类型,有下面四种类型选择,这里选则tcp socket就好
/**
* SWOOLE_SOCK_TCP 创建tcp socket
SWOOLE_SOCK_TCP6 创建tcp ipv6 socket
SWOOLE_SOCK_UDP 创建udp socket
SWOOLE_SOCK_UDP6 创建udp ipv6 socket
*/
// 第二个参数是同步还是异步
/**
* SWOOLE_SOCK_SYNC 同步客户端
SWOOLE_SOCK_ASYNC 异步客户端
*/
$client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC);
// 随后建立连接,连接失败直接退出并打印错误码
$client->connect('127.0.0.1', 9501) || exit("connect failed. Error: {$client->errCode}\n");
// 向服务端发送数据
$client->send("hello server.");
// 从服务端接收数据
$response = $client->recv();
// 输出接受到的数据
echo $response . PHP_EOL;
// 关闭连接
$client->close();
看下模拟结果
注意到无论是server还是client,都是在CLI下执行的。从模拟的结果中我们也可以清晰的看到client与server交互的整个过程。但是,相信很多人都会有疑问,尤其是phper,server和客户端都这么玩,完全看不到实际应用啊。先慢慢练习吧,我们这才刚打响与swoole之间的战役。
以上就是“用代码教你使用swoole怎么模拟客户端”的详细内容,想要了解更多swoole教程欢迎关注编程学习网
扫码二维码 获取免费视频学习资料

- 本文固定链接: http://www.phpxs.com/post/8457/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取