PHP复杂使用 - 与外部设备交互

时间:2009-04-03 08:49:04

标签: php

是否可以访问&在PHP中控制外部设备?

例如,它是否能够改变USB风扇的速度或改变无线玩具车的方向。

我正试图超越web dev,我想知道我使用的编程语言是否能够处理我的想法,或者我是否应该考虑改变环境。

如果可以做到这一点,我非常感谢任何可能更适合阅读材料的建议或其他语言的建议。

谢谢!

4 个答案:

答案 0 :(得分:3)

在Linux上,通过访问/ dev / files肯定是可能的。但这将非常乏味。我建议你切换到Python,Ruby,Lua或Java。

例如libusbPythonRubyLuaJava绑定。

答案 1 :(得分:1)

您可以编写外部程序,然后使用PHP的exec(或者是系统?)函数与可执行文件或脚本进行交互。

似乎是最理智的方式。另一个好的选择是构建一个控制外部设备的程序或脚本,该外部设备可以与通过HTTP公开的RESTfull类型API进行通信 - 然后在PHP域中使用lib_curl在它之间来回交谈。相信我,在C ++中构建一个基本的HTTP服务器,可以用PHP(或JS)进行远程控制非常简单。

<强>等待

我想我读错了这个问题;)

如果你想进入非常酷的东西,我说你学习C ++。 C ++是一门很棒的语言,它不仅打开了很多门,而且还提供了良好的学习体验。 C ++很多很有趣。

回复评论

在USB的情况下它有点不同而且更复杂(因为USB具有已建立的协议等)但串行就像将数据转储到句柄一样简单。

你应该能够很快拿到C ++来达到这一点。无论哪种方式,这都是一次很棒的体验。

答案 2 :(得分:0)

这可以通过扩展来实现,但不能使用纯PHP代码。我不知道有任何扩展可以做这样的事情,但我认为它应该是可能的。

答案 3 :(得分:0)

如果您找到执行此操作的命令行工具,则可以使用exec()system()passthru()shell_exec()来控制它(根据程序的输出结果)给你回来)

如果您从公共网站访问此计划,请确保escapeshellcmd()