Страница 1 из 2
ImageMagick + exec ('convert')
Добавлено: 25 янв 2014, 15:28
art4mac
Всем привет. Проблума следующая. У меня в проекте ImageMagick должен работать через exec ('convert [параметры]').
Как настроить/куда копать, чтобы все заработало.
Сам ImageMagick для Винды стоит. В Path тоже есть. В сервере стоит Свой Path + WinPath, в PHPinfo тоже все есть. Exec выполняется (echo exec('whoami');) В консоле Винды convert выполняется. А вот в проекте не работает.
Помогите разобраться в причинах и устранить их.
Заранее спасибо.
Добавлено: 28 янв 2014, 17:52
Максим
Ну так а ошибку то вам какую говорит? Покажите...
Добавлено: 28 янв 2014, 17:58
art4mac
Никаких ошибок. Специально вывел в отдельную страницу. По идее echo exec("convert"); должен вернуть все, что пишет convert в консоли. Но тут пусто. При этом echo exec('whoami'); возвращает имя юзера.
Добавлено: 28 янв 2014, 18:49
Максим
art4mac писал(а):По идее echo exec("convert"); должен вернуть все, что пишет convert в консоли.
Ваша идея неверна, команда exec выводит только последнюю строку ответа, а она часто может быть пустой или просто состоять из пробела. Используйте команду passthru для вывода полного ответа.
Добавлено: 28 янв 2014, 19:44
art4mac
Добавлено: 28 янв 2014, 19:51
Максим
Там же нет никаких ошибок. Вы уверены то показали вывод выполнения команды конвертации ваших картинок, а не просто ("convert")?
Добавлено: 28 янв 2014, 19:58
art4mac
В том то и дело, что ошибок нет.
<?php
echo("Start<br />");
echo( passthru ('convert -resize 640x480 Image.jpg mini_image.jpg'));
echo "<br />".exec('whoami');
echo("<br />End");
?>
в ответ тишина.
http://take.ms/w8FZR
Добавлено: 28 янв 2014, 21:19
Максим
Указывайте полные пути до картинок, думаю проблема в этом.
Добавлено: 29 янв 2014, 11:18
art4mac
Честно вс проверяю. Пока результата нет
Код
<?php
echo("Start<br />");
echo( passthru ('convert -resize 640x480 D:\Dropbox\!Server\domains\forforce\ff.team\web\Image.jpg D:\Dropbox\!Server\domains\forforce\ff.team\web\mini_image.jpg'));
passthru ('convert -resize 640x480 D:\Dropbox\!Server\domains\forforce\ff.team\web\Image.jpg D:\Dropbox\!Server\domains\forforce\ff.team\web\mini_image.jpg');
echo "<br />".exec('whoami');
echo("<br />End");
?>
Результат
http://take.ms/nxaUU новых фалов тоже нет
Добавлено: 29 янв 2014, 14:59
Максим
echo( passthru ('convert Image.jpg -resize 640x480 mini_image.jpg'));
Так попробуйте.