【发布时间】:2015-01-13 01:55:41
【问题描述】:
我有一个使用shell_exec() 在Linux 上运行命令的php 文件。此命令需要一些时间才能完成,并且在每个阶段都会打印出一些内容。我希望php回显命令在打印时打印的每一行。
我发现使用ob_flush() 和flush() 可以做出这样的分块http 响应,但是我不能在打印行时回显它们,因为shell_exec() 等到命令完成然后返回输出。这样,当命令一次性终止时,行会被回显。
我认为我应该避免将shell_exec() 用于此目的。我还能如何做到这一点?
【问题讨论】:
-
不能用 shell_exec,用 proc_open 可以
-
如果您能在回答中告诉我该怎么做,我将不胜感激。