美文网首页
网络编程--socket

网络编程--socket

作者: 机器不能学习 | 来源:发表于2018-09-03 21:22 被阅读0次


    php内置函数

    只能够主动连接,无法进行监听等活动。                                                          函数包或fsockopen和pfsockopen,后者是长连接,persistent的缩写                    利用函数建立连接后,资源的传输获取可以用文件操作的几个函数。fgets()(读字符,用于读取正行或字符串)  fread()(用于读取整块内容) fwrite()  fclose()等


    PECL 函数库函数

    函数库有强大的socket功能,包括监听端口,阻塞和非阻塞切换,多客户登录等等。

    socket作为一个操作传输层的API,先要建立一个socket(使用函数socket_create),然后再把主机绑定(socket_bind用于服务器绑定ip端口),客户端连接(用socket_connect),写入socket_write(),发送socket_send(),socket_read()读取数据

    读写数据时应在无线循环中,因为双方都要长时间等待特别是服务器端,所以用无线循环接受数据。

    也要注意设置set_time_limit(0);来设置脚本最长运行时间

    udp和tcp的区别在create时的参数时就可以区别设置



    字符流

    字符流用stream_socket的一系列函数,其客户端和服务器的socket创建方式不同,一个是strean_socket_server一个是stream_socket_client,用tcp还是udp在第一个参数时设置,如tcp://127.0.0.1:222(用tcp 连接127.0.0.1的222端口)。

    多客户:多客户就要维护一个数组存放同时进入的客户。

    关键函数是stream_select(),该函数可以读取到所有连接信息,但是其类型必须为stream。

    注意点:线程被close后类型会变为unknown(看文件代码)

    相关文章

      网友评论

          本文标题:网络编程--socket

          本文链接:https://www.haomeiwen.com/subject/adgiwftx.html