【发布时间】:2016-11-30 14:16:04
【问题描述】:
我正在尝试使用 PHP 脚本运行 PhantomJS
exec('/path/to/phantomjs/phantonjs --version');
此行在 CLI 中运行良好,但在我的 PHP 脚本中根本不起作用。
我四处寻找修复方法并找到了这个Q/A 并阅读了一些有关可能是问题的权限的内容。我已经尝试了所有这些修复程序,但 PhantomJS 仍然无法启动。
我现在很绝望,有人可以帮帮我吗? 谢谢。
【问题讨论】:
-
你期望它输出一些东西吗?你需要
echo返回值。 -
我已经回应了它,甚至尝试添加一个输出数组作为 exec 的第二个参数,但该命令根本无法运行。 :(
-
您能否创建一个不起作用的脚本的最低版本并发布?您是否能够让
exec使用php -a使用交互式解释器工作? -
我在
/usr/local/bin中有 PhantomJS。该二进制文件是可执行的,我同时拥有权限和所有权。我使用像$cmd = '/usr/local/bin/phantomjs --version';这样简单的脚本 这显然可以在 CLI 中完美运行,但是当从 PHP 调用时:$response = exec($cmd, $out, $status) ;状态返回true表示命令未执行,$response和$out均为空.不是null,而是分别是一个空字符串和一个包含一个空字符串元素的字符串数组。 -
也许 php.ini 中的某些东西阻止了它。
标签: php linux ubuntu phantomjs