首页
下载
文档
问答社区
视频
捐赠
源代码
AI 助理
赞助商
CRMEB
Apipost
腾讯云
微擎
禅道
51Talk
商业产品
Swoole AI 智能文档翻译器
Swoole-Compiler PHP 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
tcp客户端输入中文时乱码
服务端代码 <?php //创建Server对象,监听 127.0.0.1:9501端口 $serv = new swoole_server("127.0.0.1", 9502); $serv->set(array( 'reactor_num' => 2, //reactor thread num 'worker_num' => 4 //worker process num )); //监听连接进入事件,返回服务器 $serv->on('connect', function ($serv, $fd,$worker_num) { echo "Client-{$fd} jincheng{$worker_num}.\n"; }); //监听数据接收事件,返回客户端,data为客户端发送数据 $serv->on('receive', function ($serv, $fd, $from_id, $data) { $serv->send($fd, "Server:{$from_id} ".$data); }); //监听连接关闭事件,还是返回到服务端 $serv->on('close', function ($serv, $fd) { echo "Client: Close-{$fd}.\n"; }); //启动服务器 $serv->start(); ?> 客户端代码 header("Content-type: text/html; charset=utf-8"); //创建Server对象,监听 127.0.0.1:9501端口 $client=new swoole_client(SWOOLE_TCP); if(!$client->connect("127.0.0.1",9502)){ echo "**未连接**"; } //php cli常量 fwrite(STDOUT,'**您输入的字符是**:'); //获得用户输入信息, $msg=trim(fgets(STDIN)); $client->send($msg); //接受服务器发送的数据 $result=$client->recv(); echo $result; ?> 问题是,'您输入的字符'和‘未连接’显示乱码,php代码是utf-8格式的,但是还是显示乱码
发布于4年前 · 7 次浏览 · 来自
提问
n
null
服务端代码 <?php //创建Server对象,监听 127.0.0.1:9501端口 $serv = new swoole_server("127.0.0.1", 9502); $serv->set(array( 'reactor_num' => 2, //reactor thread num 'worker_num' => 4 //worker process num )); //监听连接进入事件,返回服务器 $serv->on('connect', function ($serv, $fd,$worker_num) { echo "Client-{$fd} jincheng{$worker_num}.\n"; }); //监听数据接收事件,返回客户端,data为客户端发送数据 $serv->on('receive', function ($serv, $fd, $from_id, $data) { $serv->send($fd, "Server:{$from_id} ".$data); }); //监听连接关闭事件,还是返回到服务端 $serv->on('close', function ($serv, $fd) { echo "Client: Close-{$fd}.\n"; }); //启动服务器 $serv->start(); ?> 客户端代码 header("Content-type: text/html; charset=utf-8"); //创建Server对象,监听 127.0.0.1:9501端口 $client=new swoole_client(SWOOLE_TCP); if(!$client->connect("127.0.0.1",9502)){ echo "**未连接**"; } //php cli常量 fwrite(STDOUT,'**您输入的字符是**:'); //获得用户输入信息, $msg=trim(fgets(STDIN)); $client->send($msg); //接受服务器发送的数据 $result=$client->recv(); echo $result; ?> 问题是,'您输入的字符'和‘未连接’显示乱码,php代码是utf-8格式的,但是还是显示乱码
赞
0
分享
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
评论
2019-12-14
李
李军
我也遇到了,楼主解决了吗
赞
0
回复
微信公众号
热门内容
暂无回复的问答
- CodeGalaxy K3s 轻量集群节点之间如何实现负载均衡
- 关于openssl CURL WARNING swSSL_connect: SSL_connect(fd=69) failed. Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small[1|394]
- 多个模型如何进行事务异常回退?
- websocket开启wss报错
- 协程tcp服务器如何使用多进程?recv()方法接收信息,打印出来的pid一直是同一个。没用使用到多进程啊。