php socket服务端读取到客户端发送的数据 怎么把这个数据发送到html页面上 我发现我php socket服务端和客户端通讯没问题,然后想把数据发送到html页面上的时候,就会报错。应该怎么处理。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 set_time_limit(0);$address = "127.0.0.1";$port = 1009; $sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("socket_create() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");//阻塞模式socket_set_block($sock) or die("socket_set_block() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");$result = socket_bind($sock, $address, $port) or die("socket_bind() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");$result = socket_listen($sock, 4) or die("socket_listen() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");do { $msgsock = socket_accept($sock) or die("socket_accept() failed: reason: " . socket_strerror(socket_last_error()) . "/n"); $buf = socket_read($msgsock, 8192); $sendStrArray = str_split(str_replace(' ', '', $buf), 2); for ($i = 0; $i < count($sendStrArray); $i++) { if($i==14){ echo "people:".hexdec($sendStrArray[$i])."\t\t\n"; } } socket_close($msgsock);} while (true);socket_close($sock); 就是我这个服务端获取到客户端发送的数据,怎么把这个数据在发送到html页面上 /** * @Title:实例化时配置函数 * @Name:Send * @Param $newClinet 新接入的socket * @Param $msg 要发送的数据 * @return int|string */public function Send($newClinet, $msg){$msg = $this->frame($msg);socket_write($newClinet, $msg, strlen($msg));} public function frame($s) {$a = str_split($s, 125);if (count($a) == 1) {return "\x81" . chr(strlen($a[0])) . $a[0];}$ns = "";foreach ($a as $o) {$ns .= "\x81" . chr(strlen($o)) . $o;}return $ns;}$this -> Send(sock,"发送给客户端的内容"); 请教关于 引用的问题 Php session 原理 - 用数据库保存session 怎么去掉字符串首尾部一个或多个换行符<br /> Zend新手入门问题 都快郁闷死了 php5设置 c扩展php时出错 求助PHP或者Apache或者Mysql配置的问题 一个错误的说明,请各位大虾们帮我看看,到底是什么原因? 请问一下这两段readdir循环的代码为什么会不一样呢? PHP的Perl正则表达式的匹配问题,求帮帮忙 有个字段flag,0等待审核1通过审核2审核失败,我想把0排最前面,然后1和2按产生的ID来排,如何设置呢? UNION ALL联合查询好慢,有大神能帮优化一下以下语句吗?
set_time_limit(0);
$address = "127.0.0.1";
$port = 1009;
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("socket_create() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");
//阻塞模式
socket_set_block($sock) or die("socket_set_block() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");
$result = socket_bind($sock, $address, $port) or die("socket_bind() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");
$result = socket_listen($sock, 4) or die("socket_listen() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n");
do {
$msgsock = socket_accept($sock) or die("socket_accept() failed: reason: " . socket_strerror(socket_last_error()) . "/n");
$buf = socket_read($msgsock, 8192);
$sendStrArray = str_split(str_replace(' ', '', $buf), 2);
for ($i = 0; $i < count($sendStrArray); $i++) {
if($i==14){
echo "people:".hexdec($sendStrArray[$i])."\t\t\n";
}
} socket_close($msgsock);
} while (true);
socket_close($sock);
* @Title:实例化时配置函数
* @Name:Send
* @Param $newClinet 新接入的socket
* @Param $msg 要发送的数据
* @return int|string
*/
public function Send($newClinet, $msg){
$msg = $this->frame($msg);
socket_write($newClinet, $msg, strlen($msg));
}
public function frame($s) {
$a = str_split($s, 125);
if (count($a) == 1) {
return "\x81" . chr(strlen($a[0])) . $a[0];
}
$ns = "";
foreach ($a as $o) {
$ns .= "\x81" . chr(strlen($o)) . $o;
}
return $ns;
}$this -> Send(sock,"发送给客户端的内容");