[英]php ImageMagick with MAMP Pro 3 on localhost — exec not working
[英]Resolved: MAMP Php can't exec ('convert') after Homebrew ImageMagick install
我在Lion上使用Homebrew安装了Imagemagick,一切都很好,除了它从php调用时根本不起作用。 安慰:
$ convert -version
Version: ImageMagick 6.7.1-1 2011-07-29 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2011 ImageMagick Studio LLC
Features: OpenMP
$ which convert
/usr/local/bin/convert
PHP:
echo exec ('convert -version');
或者exec('convert -version',$ output); 的var_dump($输出);
什么都不产生(或空数组)。
exec ('/usr/local/bin/convert') // works, but
exec ('which convert') // doesn't
我需要在本地测试它,以确保我可以检测生产环境中的转换。 但我无法正确测试它。 PATH已设置,它可以在终端中运行,但不能在PHP中运行。
解决:
事实证明,对于php工作convert
应该在/usr/bin/
所以这解决了它:
ln -s /usr/local/bin/convert /usr/bin/convert
更新
这是因为MAMP,这是修复: http : //firedevcom.tumblr.com/post/22791937644/fix-for-homebrew-imagemagick-and-mamp
打开/ Applications / MAMP / Library / bin / envvars
并注释掉以下几行:
DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
export DYLD_LIBRARY_PATH
完成。
在这里添加我自己的答案,以便您可以投票:
它是由MAMP引起的,这是修复: http : //firedevcom.tumblr.com/post/22791937644/fix-for-homebrew-imagemagick-and-mamp
打开/Applications/MAMP/Library/bin/envvars
并注释掉以下几行:
DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
export DYLD_LIBRARY_PATH
完成。
sudo ln -s /usr/local/bin/convert /usr/bin/convert
只需使用exec("PATH=\\$PATH:/usr/local/bin; convert file.pdf file.png");
它将在运行时添加转换为PATH。
而不仅仅是exec(“转换....”); 使用完整的路径。 你可以通过输入终端来获得它
类型转换
你应该得到类似的东西:convert hashed(/ opt / local / bin / convert)
所以现在使用:
exec(“/ opt / local / bin / convert ....”);
[积分给@Nikki]
在评论之后
DYLD_LIBRARY_PATH =“/ Applications / MAMP / Library / lib:$ DYLD_LIBRARY_PATH”export DYLD_LIBRARY_PATH
在/ Applications / MAMP / Library / bin / envvars中
验证convert in是服务器的PATH环境变量。 或者只指定完整路径:
exec('/usr/local/bin/convert -version');
exec
返回命令结果的最后一行,该结果恰好是一个空字符串。 如果你想获得输出,只需执行以下操作:
exec('convert -version', $output);
var_dump($output); // it is an array which filled with every line of output from the command
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.