我一直在使用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 &");
它又开始工作了。如何添加其他变量并使其再次运行?
答案 0 :(得分:0)
您的问题可能与某些变量有关。您可能在程序中进行了一些更改,并且无意中更改了其中一些值。
只需打印您发送给exec的字符串(而不是执行它)或构造包含所有变量的字符串:
print("path_to_php = $path_to_php ### emailer = $emailer ### digest_sub_security_var = $digest_sub_security_var ... ");
查看结果输出。这应该可以让您了解变量的变化以及修改代码的位置。
如果这无助于复制正在执行的字符串并在shell上运行它(最后没有"> /dev/null &"
)。希望脚本会提供一些有用的错误。