【发布时间】:2012-07-12 23:25:46
【问题描述】:
我正在编写一个 PHP 脚本,它将在服务器上启动一个程序。
我这样做:
exec('myAppName');
这行代码“有效”,因为它实际上执行了程序,但是,我无法让它从这一行返回(继续过去)。
它会一直挂在那里,直到我手动关闭打开的程序或超过 max_execution_time。
我是否遗漏了一些明显的东西?
【问题讨论】:
-
你想
fork然后exec吗?因为exec不应该以某种方式“背景”该过程。 -
在黑暗中拍摄,但请尝试使用
passthru()而不是exec()。程序的输出可能会揭示一些东西。 -
也尝试过 passthru(),结果相同。
-
我应该声明我在 Windows 服务器上运行 PHP。无论如何,我使用了一个名为“PsExec”的工具来启动进程而不是等待它。 exec("psexec -d myAppName");这似乎完成了我所需要的。
-
Adam,您可以在 Windows 上完成此操作,无需任何外部程序:ss64.com/nt/start.html
标签: php