因为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://phpxs.com/post/8457/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取