Mac OS X上的phantomjs可以通过命令行工作,而不是通过exec().[英] phantomjs on Mac OS X works from the command line, not via exec()

问题描述

以下内容在用户 xyz 的命令行上运行良好:

/opt/local/bin/phantomjs --version
1.9.1

但是,在 PHP 中,对于同一个用户 (xyz),我得到一个错误代码 5

exec('/opt/local/bin/phantomjs --version', $o, $r)
echo $r

我正在使用 MAMP,并且 exec() 通常可以正常工作.如果有人知道如何调试这个,我会非常感激!

推荐答案

感谢 Amal Murali 为我指明了正确的方向!

这也记录在 exec() 命令 on mac osx 返回 5,并且可以通过取消设置 DYLD_LIBRARY_PATH 来修复.p>

以下命令将起作用:

exec('unset DYLD_LIBRARY_PATH ; /opt/local/bin/phantomjs --version', $o, $r)
echo $r

干杯,

阿尔伯特.

本文地址:https://www.itbaoku.cn/post/1740188.html