javascript - 使用 php socket 函数写通信代码时遇到的问题??
程序员文章站
2022-04-08 20:51:59
...
下面socket代码 服务端PHP socket能够接受到来自客户端PHP socket 的消息,但是无法发送消息到客户端 PHP socket,报错:由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受。 网上查阅了些资料,不明所以,求大神解救....
服务端 PHP socket:
require_once 'socket_config.php';
$socket = socket_create(AF_INET , SOCK_STREAM , SOL_TCP);
socket_bind($socket , $host , $port);
socket_listen($socket , 3);
$client = socket_accept($socket);
$input = socket_read($client , $read_length , $read_type);
echo '来自客户端 PHP 的消息: ' . $input;
$output = strrev($input);
socket_write($client, $output , strlen($output));
socket_close($client);
socket_close($socket);
客户端 PHP Socket:
require_once 'socket_config.php';
$socket_client = socket_create(AF_INET , SOCK_STREAM , SOL_TCP);
$socket_con = socket_connect($socket_client , $host , $port);
$message = 'hello boy';
// 发送给服务端 socket
socket_write($socket_client , $message , strlen($message))
// 阅读来自服务端的响应
$result = socket_read($socket_client , $read_length , $read_type);
echo '来自服务端 PHP 的消息: ' . $result;
//socket_close($socket_client);
已解决,贴出解决网上找到的答案哈: http://www.cnblogs.com/wolf-s...
回复内容:
下面socket代码 服务端PHP socket能够接受到来自客户端PHP socket 的消息,但是无法发送消息到客户端 PHP socket,报错:由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受。 网上查阅了些资料,不明所以,求大神解救....
服务端 PHP socket:
require_once 'socket_config.php';
$socket = socket_create(AF_INET , SOCK_STREAM , SOL_TCP);
socket_bind($socket , $host , $port);
socket_listen($socket , 3);
$client = socket_accept($socket);
$input = socket_read($client , $read_length , $read_type);
echo '来自客户端 PHP 的消息: ' . $input;
$output = strrev($input);
socket_write($client, $output , strlen($output));
socket_close($client);
socket_close($socket);
客户端 PHP Socket:
require_once 'socket_config.php';
$socket_client = socket_create(AF_INET , SOCK_STREAM , SOL_TCP);
$socket_con = socket_connect($socket_client , $host , $port);
$message = 'hello boy';
// 发送给服务端 socket
socket_write($socket_client , $message , strlen($message))
// 阅读来自服务端的响应
$result = socket_read($socket_client , $read_length , $read_type);
echo '来自服务端 PHP 的消息: ' . $result;
//socket_close($socket_client);
已解决,贴出解决网上找到的答案哈: http://www.cnblogs.com/wolf-s...
服务端有一行写错了,应写为
socket_write($client, $output , strlen($output));
这是我目测的,没调试,不知道还有没有其它问题
上一篇: 关于窗口句柄的文章推荐