php socket客户端和服务端互相通讯实例

本文介绍了一个使用 PHP 实现的 Socket 通信示例,包括服务器端和客户端的代码实现。该示例展示了如何设置 Socket 的连接、监听、读写操作及关闭连接等基本过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

示例代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
    set_time_limit(0);
    $host="localhost";
    $port=1001;
     
    //创建一个连接
    $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
    //绑定socket到端口
    $result=socket_bind($socket,$host,$port) or die("cannot bind port to socket\n");
    //开始监听这个端口
    $result=socket_listen($socket,4) or die("could not set up socket listen\n");
    //接受连接,另一个socket来处理通信
    $msgsock=socket_accept($socket) or die("cannot accept incoming connection\n");
    if($msgsock){
        echo date("Y-m-d H:i:s D a");
    }
    //读取客户端发送过来的信息
    $input=socket_read($msgsock,1024) or die("cannot read input\n");
    $input=trim($input);
    $output=strrev($input)."顺序反过来了吧\n";
    //对接收到的信息进行处理,然后返回到客户端
    socket_write($msgsock,$output,strlen($output)) or die("cannot write");
    //关闭socket连接
    socket_close($msgsock);
    socket_close($socket);
 
?>

客户端

示例代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
<?php
    set_time_limit(0);
    $host="localhost";
    $port=1001;
     
    //创建一个socket
    $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
     
    $conn=socket_connect($socket,$host,$port) or die("cannot connect server\n");
     
    if($conn){echo "client connect ok!";}
     
    socket_write($socket,"hello world!") or die("cannot write data\n");
     
    $buffer=socket_read($socket,1024,PHP_NORMAL_READ);
     
    if($buffer){
        echo "response was:".$buffer."\n";
    }          
    socket_close($socket);
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值