我在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
Run Code Online (Sandbox Code Playgroud)
PHP:
echo exec ('convert -version');
Run Code Online (Sandbox Code Playgroud)
或者exec('convert -version',$ output); 的var_dump($输出);
什么都不产生(或空数组).
exec ('/usr/local/bin/convert') // works, but
exec ('which convert') // doesn't
Run Code Online (Sandbox Code Playgroud)
我需要在本地测试它,以确保我可以检测生产环境中的转换.但我无法正确测试它.PATH已设置,它可以在终端中运行,但不能在PHP中运行.
解决:
事实证明,对于php应该工作convert,/usr/bin/所以这解决了它:
ln -s /usr/local/bin/convert /usr/bin/convert
Run Code Online (Sandbox Code Playgroud)
更新
这是因为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
Run Code Online (Sandbox Code Playgroud)
完成.
command-line ×1
homebrew ×1
imagemagick ×1
linux ×1
mamp ×1
osx-lion ×1
php ×1
sysadmin ×1
unix ×1