Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php UDP写入套接字,同时从套接字读取_Php_Sockets_Udp - Fatal编程技术网

Php UDP写入套接字,同时从套接字读取

Php UDP写入套接字,同时从套接字读取,php,sockets,udp,Php,Sockets,Udp,服务器: 服务器从客户端接收数据,但客户端没有从服务器获得任何数据,并且没有停止运行。服务器正在将数据包发送回自身,您需要将其传递到客户端的端口,而不是服务器的端口。因此: $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); $result = socket_connect($sock, '127.0.0.1', 11104); $msg = "Sikerult"; $len = strlen($msg);

服务器:


服务器从客户端接收数据,但客户端没有从服务器获得任何数据,并且没有停止运行。

服务器正在将数据包发送回自身,您需要将其传递到客户端的端口,而不是服务器的端口。因此:

    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$result = socket_connect($sock, '127.0.0.1', 11104);
    $msg = "Sikerult";
    $len = strlen($msg);
        //socket_write($sock, $msg, strlen($msg));
    socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 11104);
    //$buf=socket_read($sock, 2048);
    socket_recvfrom($sock, $buf, 12, 0, $from, $port);
    echo $buf;
    socket_close($sock);
?>
    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$result = socket_connect($sock, '127.0.0.1', 11104);
    $msg = "Sikerult";
    $len = strlen($msg);
        //socket_write($sock, $msg, strlen($msg));
    socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 11104);
    //$buf=socket_read($sock, 2048);
    socket_recvfrom($sock, $buf, 12, 0, $from, $port);
    echo $buf;
    socket_close($sock);
?>
socket_recvfrom($socket, $buf, 12, 0, $from, $port);
socket_sendto($socket, $msg, strlen($msg), 0, $from, $port);