码迷,mamicode.com
首页 > Web开发 > 详细

php socket 读取缓存区域

时间:2021-03-16 13:58:08      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:读取   bin   his   close   阻塞   php   ESS   create   端口   

php socket 读取缓存区域

<?php

//创建socket套接字
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
//设置阻塞模式
socket_set_block($socket);
//为套接字绑定ip和端口
socket_bind($socket,127.0.0.1,3046);
//监听socket
socket_listen($socket,4);

while(true)
{
    //接收客户端请求
    if(($msgsocket = socket_accept($socket)) !== false)
    {
        //读取请求内容
        $buf = socket_read($msgsocket, 2);
        echo "Received msg: $buf \n";
          $buf2 = socket_read($msgsocket, 2);
              echo "Received msg: $buf2 \n";
        $str = "this is a service message";
        //向连接的客户端发送数据 
        socket_write($msgsocket, $str,strlen($str));
        //操作完之后需要关闭该连接否则 feof() 函数无法正确识别打开的句柄是否读取完成
        socket_close($msgsocket);
    }
}
socket_read 第二个参数来决定要从缓冲区最多读取多少字符    上面例子是2个个读取的
$buf = socket_read($msgsocket, 8192);

这个代表最多8192个字符可以读取    如果发过来100个字符 那就按照100个字符读取



php socket 读取缓存区域

标签:读取   bin   his   close   阻塞   php   ESS   create   端口   

原文地址:https://www.cnblogs.com/newmiracle/p/14536052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!