2

我想编写一个 php 文件,它将命令传送到系统(但也处理标准输入,以便也可以使用交互式程序)。我已经读到这不能在 php 中完成,所以我用 C 编写了一个程序,它设置了 2 个 fifos(输入/输出)。我在以下意义上对其进行了测试:

(开放3个终端)

终端 1:./program 设置管道终端 2:cat fifo_out 终端 3:echo "ls -l" > fifo_in

这将在终端 2 中显示。我将很快在 C 程序中实现标准输入。

因此,我计划从 php 文件发送命令并返回响应(包括最终处理标准输入)。是否有任何我应该知道的“陷阱”会使这不可行?(例如 php 不能很好地处理此类程序之间的命名管道或存在超时或权​​限等?有什么建议可以避免这种陷阱吗?

提前致谢

4

1 回答 1

0

据我所知,您可以使用proc_open()双向 IO 运行程序。该文档包含一个相当全面的示例

于 2013-01-16T16:34:41.810 回答