2012-04-03 40 views
0

使用的MacPorts並具有以下路徑轉換ImageMagick的安裝:ImageMagick的從終端運行而不是在PHP

$其轉換 的/ opt/local/bin目錄/轉換

運行命令:

/opt/local/bin/convert pollination.jpg -resize 50% pollination2.jpg 

在PHP中不起作用,但相同的命令在終端中正常運行並在目錄中創建映像。

有什麼我做錯了。沒有安裝Imagick,並且不願意。

羅伯特

+0

難道它不能以某種特殊的方式解決問題嗎? – 2012-04-03 09:51:57

+0

不是我能看到的。即使提供絕對路徑,新圖像也不會被創建。但是,在命令行中運行它會產生預期的結果。 – rmccallum 2012-04-03 09:55:50

+0

你可以添加你使用的確切的PHP命令嗎? – Aurimas 2012-04-03 09:59:19

回答

0

我遇到了完全相同的問題。顯然,這是由於PHP/Apache沒有正確設置路徑。您可以通過添加給你的PHP腳本的頂部設置它們:

$im_bin_dir = '/opt/local/bin'; //to get this, type "which convert" in terminal 
$im_lib_dir = '/opt/local/lib/ImageMagick-6.8.9'; //do an "ls -l" in /opt/local/lib to find your directory 
putenv('PATH='.getenv('PATH').':'.$im_bin_dir); 
putenv('DYLD_LIBRARY_PATH='.$im_lib_dir); 

爲了測試,我已將此添加到我的PHP腳本(設置當然$ IMAGE_PATH後)。並且,它生成了test.gif文件!

$exec = 'convert logo: '.$image_path.'test.gif'; 
system($exec); 
相關問題