Проблема с методом Imagick::flattenImages и включение Short Open Tag (short_open_tag) для PHP на Debian 8
Обновил одну из виртуальных машин с Debian 7 (Wheezy) на Debian 8 (Jessie), после обновления обнаружил две проблемы, которые помешали началу работы.
Ошибка Imagick::flattenImages method is deprecated and it's use should be avoided
Эта функция устарела из-за чего не работает, и мы получаем предупреждение в PHP 5.6, который появился в Debian 8. Требуется заменить этот вызов на
Imagick::mergeImageLayers(Imagick::LAYERMETHOD_FLATTEN), вести себя он будет так же.
Как включить Short Open Tag (short_open_tag) в PHP
Debian 8 опция "short_open_tag" сейчас по умолчанию выключена.
Директива "short_open_tag" определяет возможность использования коротких тегов <? — ?>.
Включается "short_open_tag" в файле конфигурации PHP "php.ini" установкой значения в On. По умолчанию установлен Off.
short_open_tag = On
- После установки значения перезагружаем Apache: service apache2 reload.
- Если работает связка Nginx + php-fpm: service php5-fpm reload.
Проверить работоспособность short_open_tag можно создав тестовый файл test.php, который будет обладать следующим содержимым:
<? echo "Short Tag Testing"; ?>
К файлу можно обратиться через браузер или консоль сервера командой
php check.php
Если short_open_tag работает, мы получим следующий вывод:
Short Tag Testing
Если short_open_tag не работает, мы получим следующий вывод:
<? echo "Short Tag Testing"; ?>