socket_create与fsockopen php

时间:2009-02-18 22:33:35

标签: php sockets udp

我目前使用的托管服务不允许我使用套接字,这可能是他们的理由。但是,它们让我使用 fsockopen 。我想知道区别是什么,因为一些使用 socket_create 甚至 stream_socket_server 的脚本不能与 fsockopen 一起使用。也就是说,如果 fsockopen 应该有效,我的代码将在下面列出。它的作用是监听自己的ip地址以获取传入的udp数据包并读取它们。

由于

$sock = fsockopen("udp://x.x.x.x", $port);
while(1)
{
    $buf = fread($sock, 200);
    flush();
    ob_flush();
}

1 个答案:

答案 0 :(得分:12)

fsockopen创建与主机的连接,而不是监听套接字。

fsockopen($ address)〜== socket_connectsocket_create(),$ address)

您的托管服务提供商不希望您收听备用端口/协议。

如果你有什么工作,我不会指望它总是起作用,因为它会是一个错误。