Преобразование функции обрезки PhMagick с отключенной отладкой

Сейчас я нахожусь в процессе переключения моего сайта с одного хоста на другой, и phMagick работает на новом сервере. У меня есть страница, которая позволяет пользователям загружать изображение через ajax, и сервер использует phMagick для обрезки изображения, затем создает несколько версий с измененным размером и загружает их в S3. Сейчас это работает отлично, за исключением того, что convert команда, используемая для обрезки изображения, отражена, и javascript не знает, как с этим справиться, потому что он нарушает формат ответа JSON.

Вот соответствующая часть серверного скрипта:

require_once(BASE_PATH . "/library/phmagick/phmagick.php");     
$phmagick = new phMagick( "{$base}{$uncropped}", "{$base}{$cropped}" );
$phmagick->debug = false;
$phmagick->setImageQuality(100);
$phmagick->crop( $dimensions['width'], $dimensions['height'], $dimensions['y'], $dimensions['x'], 'NorthWest' );


//Generate the large
$phmagick->setSource("{$base}{$cropped}");
$phmagick->setDestination("{$base}{$large}");
$phmagick->resize(640, 640);

//Generate the small
$phmagick->setDestination("{$base}{$small}");
$phmagick->resize(220, 220);

//Generate the thumbnail
$phmagick->setDestination("{$base}{$thumbnail}");
$phmagick->resize(100, 100);

Как видите, для отладки установлено значение false, и я ничего не повторяю. Вот вывод, который портит мой JavaScript:

convert $snip_path/10001_uncropped.jpg -gravity NorthWest -crop 399x399+71+0 $snip_path/10001_cropped.jpg{$json_response}

Как ни странно, вы можете видеть, что я обрезаю изображение, затем изменяю его размер 3 раза, но выводится только обрезка, подобная этой. Кроме того, он выводит только саму команду, и ничего похожего на "Произошла ошибка". Я не вижу ничего в phMagick_crop класс, который выглядит так, как будто он может отвечать за сообщение.

Что еще это может быть? Я ничего не вижу в своем коде, и я не вижу ничего в коде phMagick. Я не знаю, где еще искать.

1 ответ

Решение

Неважно, я идиот. Я использую phMagick на двух разных сайтах, поэтому я проверял источник, который был более удобным. Оказывается, две копии не были идентичны. В какой-то момент кто-то добавил echo $ cmd в класс кропа, чтобы отладить его, и забыл его убрать.

Другие вопросы по тегам