我知道 PHP 确实允许您创建服务器,但客户端呢?我需要一个脚本来连接到给定端口上的 TCP/IP 服务器并发送一些数据。这在 PHP 中是否可行,如果可以,您能帮帮我吗?我没有发现任何有用的东西。我的 TCP/IP 服务器在端口 1301 上运行,我需要用户能够通过单击网页向服务器发送一个字符。
问问题
2519 次
4 回答
2
于 2012-04-10T09:27:25.423 回答
2
我以前用过这块。这相当简单;它连接到端口 $port 上的 $ip_address,并将 $sendData 数据发送到服务器,然后读取响应并返回响应。
$sendData = chr(6).chr(0).chr(255).chr(255).'info';
function sendAndGetResponse($ip_address, $port, $sendData){
$socketHandler=@fsockopen($ip_address, $port, $errno, $errstr, 1);
if(!$socketHandler)
{
return false; //offline
}
else
{
$response = '';
stream_set_timeout($socketHandler, 2);
fwrite($socketHandler, $sendData);
while (!feof($socketHandler))
{
stream_set_timeout($socketHandler, 2);
$response .= fgets($socketHandler, 1024);
}
fclose($socketHandler);
return $response;
}
}
于 2012-04-10T09:51:09.557 回答
1
如果是 HTTP 服务器,您可以使用 CURL 或创建套接字连接http://php.net/manual/en/function.socket-connect.php
于 2012-04-10T09:35:46.660 回答
-3
是的,php 可以充当带有 CURL、fsockopen 和获取 URL 的最简单方法的 HTTP 客户端 - 使用file_get_contents()
于 2012-04-10T09:25:40.597 回答