如何制作基于PHP的UDP日志查看器?
好的,你们中的很多人可能听说过加里的Mod或Team Fortress 2这样的游戏。他们使用远程RCON日志扩展,我希望在我的网站上使用它来查看实时控制台(也可以提交RCON命令,但这很容易做到) 无论如何,我试着四处搜索以找到我需要的命令,但我找到的最接近的命令是socket\u bind。我尝试使用此选项,但无法绑定“67.202.70.156”的IP。这是它给我的错误如何制作基于PHP的UDP日志查看器?,php,udp,Php,Udp,好的,你们中的很多人可能听说过加里的Mod或Team Fortress 2这样的游戏。他们使用远程RCON日志扩展,我希望在我的网站上使用它来查看实时控制台(也可以提交RCON命令,但这很容易做到) 无论如何,我试着四处搜索以找到我需要的命令,但我找到的最接近的命令是socket\u bind。我尝试使用此选项,但无法绑定“67.202.70.156”的IP。这是它给我的错误 Warning: socket_bind() [function.socket-bind]: unable to bin
Warning: socket_bind() [function.socket-bind]: unable to bind address [99]: Cannot assign requested address in /home1/rainbowd/public_html/udp.php on line 5
我不确定我是否做错了什么,但这是我的代码。我从另一个stackoverflow问题中借用了一些代码
<?php
$sourceip = '67.202.70.156';
$port = 27500;
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
socket_bind($sock, $sourceip, 27500) or die('Could not bind to address');
//this is where the reading loop should go.
while(1)
{
echo socket_read($sock,1024);
flush();
ob_flush();
}
socket_close($sock);
?>
在您评论我是如何定义$port而不是使用$port之前,这是因为我使用了$port,然后停下来测试了一些东西。您需要使用socket\u connect()和socket\u select()来完成这项工作,就像您在上面的代码中概述的那样。或者你可能想用它来代替;如果适合所需的用途,它可能更容易使用。Bind用于监听连接,而不是建立连接。您只能绑定到服务器上存在的地址。也许您需要
插座\u连接