php使用socket感悟--tcp和udp

来源:互联网 发布:越南看中国综艺 知乎 编辑:程序博客网 时间:2024/06/11 10:38

下面几段代码测试了很长时间才整理出来,一方面是我对tcp和udp的认识还不够,另一方面不得不吐槽一下,

网上的参考资料为什么就没有一个把tcp和udp在php下使用的代码段和重要区别总结一下的呢?

1、对于udp,使用socket_recvfrom和socket_sendto,

因为无状态,不需要socket_connect和socket_listen,创建时使用SOCK_DGRAM和SOL_UDP两个参数

2、对于tcp,使用socket_read和socket_write,因为有状态,
需要socket_connect和socket_listen,创建时使用SOCK_STREAM和SOL_TCP两个参数,
还可以设置阻塞模式socket_set_block

3、运行这样的脚本时,需要特别注意最好不要在浏览器上,因为有30s限制,
直接在命令行下用php指令运行脚本,参数为php文件名,提前是已经配置php环境变量,
否则找到php目录下的php.exe,然后在命令行下调用php.exe,执行php脚本文件。


ps:最后给一张截图:

原创粉丝点击