在Linux下,您可以使用PHP的套接字扩展(sockets)实现Socket通信。
以下示例展示了一个简单的TCP套接字服务器和客户端。
服务器:
创建一个名为socket_server.php
的文件,然后添加以下代码:
<?php
set_time_limit(0);
// 创建一个套接字
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// 绑定套接字到IP和端口
$address = '127.0.0.1';
$port = 10000;
socket_bind($socket, $address, $port);
// 开始监听
socket_listen($socket);
// 接受客户端连接
$client = socket_accept($socket);
// 从客户端接收消息
$receivedMessage = '';
socket_recv($client, $receivedMessage, 2048, 0);
echo "接收到的消息:$receivedMessage\n";
// 向客户端发送消息
$sendMessage = "你好,客户端!";
socket_send($client, $sendMessage, strlen($sendMessage), 0);
// 关闭连接
socket_close($client);
socket_close($socket);
客户端:
创建一个名为socket_client.php
的文件,然后添加以下代码:
<?php
set_time_limit(0);
// 创建一个套接字
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// 连接到服务器
$address = '127.0.0.1';
$port = 10000;
socket_connect($socket, $address, $port);
// 向服务器发送消息
$sendMessage = "你好,服务器!";
socket_send($socket, $sendMessage, strlen($sendMessage), 0);
// 从服务器接收消息
$receivedMessage = '';
socket_recv($socket, $receivedMessage, 2048, 0);
echo "接收到的消息:$receivedMessage\n";
// 关闭连接
socket_close($socket);
首先运行服务器脚本:php socket_server.php
。
服务器将开始监听并等待客户端连接。
然后,在另一个终端中运行客户端脚本:php socket_client.php
。
客户端将连接到服务器并发送一条消息,然后接收服务器的响应。
总结
请确保套接字扩展已安装并启用,在大多数情况下,它已默认安装。
如有需要,您可以通过编辑php.ini
文件并添加或取消注释extension=sockets
来启用它,然后重启您的Web服务器。
© 版权声明
本站文章由不念博客原创,未经允许严禁转载!
THE END