2012-04-03 3 views
0

установлен ImageMagick, используя MacPorts и следующий путь для преобразования:ImageMagick Работает от терминала, но не в PHP

$, которые превращают /Opt/местные/бен/конвертировать

Запуск команды:

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

Не работает в PHP, но эта же команда отлично работает в терминале и создает изображение в каталоге.

Есть ли что-нибудь, что я делаю неправильно. Не установил Imagick и предпочел бы этого не делать.

Robert

+0

Не работает ли он каким-то особым образом, который мог бы помочь устранить проблему? –

+0

Не то, чтобы я мог видеть. Новое изображение не создается даже при предоставлении абсолютного пути. Однако запуск его в командной строке приводит к ожидаемым результатам. – rmccallum

+0

Вы могли бы добавить точную команду php, которую используете? – Aurimas

ответ

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); 
Смежные вопросы