好好爱自己!

php socket 进程间通信

参考: https://blog.csdn.net/qq_43187460/article/details/109557620

 

 

 

 

 

什么叫协议?? 上面的这个演示的就是协议!! 双方约定了相互交流的口令!!(你发了"close"字符串过来,就代表想中断通话,故服务端就关闭连接!!)

--------------------------------

a.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
set_time_limit(0);
$host = '0.0.0.0';
$port = 10086;
//创建socket
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("创建连接失败");
//绑定socket 到指定地址和端口
$result = socket_bind($socket, $host, $port) or die("绑定失败");
//监听连接
$result = socket_listen($socket, 3) or die("监听失败");
//接收连接请求并调用另一个子Socket处理客户端--服务器间的信息
$spawn = socket_accept($socket) or die("accept not");
while (1){
    //读取客户端输入
    $input = socket_read($spawn, 1024) or die("can not read");
    $input = trim($input);
    if($input == 'close'){
        $output = "关闭了连接" . $input . "\n";
        socket_write($spawn, $output, strlen($output)) or die("write die");
        socket_close($spawn);
        socket_close($socket);
        die('客户端关闭了');
    }
    $output = "发送成功:" . $input . "\n";
    socket_write($spawn, $output, strlen($output)) or die("write die");
    var_dump($input);
}

  一个终端运行 a.php

 

 

另一个终端 telnet 10086 这个端口,并发送信息

 

posted @   立志做一个好的程序员  阅读(249)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2017-12-25 介绍css 的3D 变换(3D transform)
2016-12-25 “psql: could not connect to server: Connection refused” Error when connecting to remote database
2016-12-25 postgreSqL的序列sequence
2016-12-25 nginx+php-fpm 的配置下,php的错误日志
2015-12-25 FastCgi与PHP-fpm之间是个什么样的关系

不断学习创作,与自己快乐相处

点击右上角即可分享
微信分享提示