PHPのソケットでデータをどのように受信するか
PHP では、ソケット関数を用いてデータを待ち受けることができます。以下は、その一例です。
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
echo "socket创建失败: " . socket_strerror(socket_last_error()) . "\n";
exit;
}
$result = socket_connect($socket, '127.0.0.1', 8080);
if ($result === false) {
echo "socket连接失败: " . socket_strerror(socket_last_error($socket)) . "\n";
exit;
}
$data = socket_read($socket, 1024);
if ($data === false) {
echo "socket读取失败: " . socket_strerror(socket_last_error($socket)) . "\n";
exit;
}
echo "接收到的数据: " . $data . "\n";
socket_close($socket);
このサンプルでは、はじめにsocket_create関数でソケットを作成し、socket_connect関数で指定IPアドレスとポート番号に接続しています。その後、socket_read関数でデータを受信し、受信データは変数$dataに格納されています。最後に、socket_close関数でソケット接続をクローズしています。