php exec not working with vars


php exec not working with vars

我一直在使用exec命令来传递变量并执行邮件脚本。 由于某种原因,它已停止工作。

这是命令行

exec("$path_to_php $emailer $digest_sub_security_var '"$vid_menu'" '"$image_menu'" '"$article_menu'" $media_query_lmt_v $media_query_lmt_i $media_query_lmt_a > /dev/null &");

当我开始通过删除一些这样的变量进行实验时

exec("$path_to_php $emailer $digest_sub_security_var '"$vid_menu'" > /dev/null &");

它又开始工作了。 如何添加其他变量并使其再次工作?

您的问题可能出在某些变量的值上。您可能在程序中进行了一些更改,并无意中更改了其中一些值。

只需打印您要发送给exec的字符串(而不是执行它)或构造一个包含所有变量的字符串:

print("path_to_php = $path_to_php ### emailer = $emailer ### digest_sub_security_var = $digest_sub_security_var ...'");

查看生成的输出。这应该可以让您了解哪些变量发生了变化以及您需要在哪里修复代码。

如果这无助于复制正在执行的字符串并在 shell 上运行它(末尾没有"> /dev/null &")。希望脚本将提供一些有用的错误。