代码之家  ›  专栏  ›  技术社区  ›  pars

如何监听UDP并使用PHP

  •  3
  • pars  · 技术社区  · 16 年前

    我必须建立一个系统来监听来自GPS设备的请求,GPS设备只能发送UDP请求。然后,如果可能的话,我将希望通过PHP分析请求。

    我不知道从哪里开始。我需要什么?我可以使用PHP吗?使用PHP是否可靠?我可以调整Apache来监听UDP请求吗?

    4 回复  |  直到 16 年前
        1
  •  3
  •   pilcrow    16 年前

    我不知道从哪里开始。

    您需要一个总体程序设计的概念,正如@karim79指出的那样,还需要了解所选语言的套接字编程API。

    我可以调整Apache来监听UDP请求吗?

    你是说阿帕奇吗 httpd ?简短的回答是“不”。

    用梨之类的东西 System_Daemon 相反。

    答案很长:“是的,这是可能的。”特别是模块化插件暴露了 HTTPD 的内部结构,你可以做任何你想做的事情(tm)(例如,参见, mod_perl )你可以打败 HTTPD 在一种应用服务器中长期运行(一组?)PHP进程本身不是HTTP驱动的。

    两人最好的答案是,再一次,“不”。

        2
  •  2
  •   karim79    16 年前

    据我所知,我认为PHP可以胜任,但我自己没有做过类似的事情。您将需要研究socket编程,这里有一个教程:

    http://www.devshed.com/c/a/PHP/Socket-Programming-With-PHP/

        3
  •  2
  •   caf    16 年前

    您可以让 inetd .

        4
  •  1
  •   Havenard    16 年前

    好吧,PHP支持一组 Socket Functions 为了让您能够处理udp,我自己使用它们构建了一个nslookup类,我可以指定名称server(全部在udp中)和ping类(raw/icmp)。它就像标准的C/C++插件库一样工作。但我并不认为使用apache+php是构建这些东西的好选择。如果您想坚持使用PHP,最好将其作为控制台应用程序编写脚本。