【问题标题】:Run a script in background in php using shell_exec使用 shell_exec 在 php 后台运行脚本
【发布时间】:2013-12-30 07:42:57
【问题描述】:

我在后台运行一个 php 脚本,我尝试了什么:

shell_exec('nohup php C:\wamp\www\Management_software\application\views\testcron.php  > /dev/null & echo $!');

当我打开命令提示符(cmd)并尝试时,这一切正常:

php C:\wamp\www\Management_software\application\views\testcron.php

但这在 php 页面上不起作用,如何解决这个问题或任何其他技术,或者我必须进行哪些修改?

【问题讨论】:

  • 你有什么错误吗???
  • 不,在我的 php 页面中什么都没有,但是在 cmd 中我得到了输出

标签: php cron background-process shell-exec


【解决方案1】:

这可能会帮助您调试问题。 exec 可以接受 3 个参数,这些参数有助于确定发生了什么。

试试

exec('nohup php C:\wamp\www\Management_software\application\views\testcron.php  > /dev/null & echo $!', $op, $er); 
echo $er;` 

并查看页面上打印的内容。如果$er的值大于0,则说明有问题。

退出代码列表请参考this list

【讨论】:

  • $er的值为0
  • 表示命令执行成功。在testcron.php 中写的所有内容都已完成。因此,例如,如果它有插入到数据库中,您可以通过在表中查找来验证它。
  • 是的,我有一个插入命令,但它实际上不起作用。
  • 好吧,我必须在 php.ini 中添加任何东西,才能工作,'exec' 和 'shell_exec' 函数?
  • 很好,文件没有写权限!
猜你喜欢
  • 1970-01-01
  • 2012-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-26
  • 1970-01-01
相关资源
最近更新 更多