Релиз PHP 5.4.0. Обзор новшеств
2 марта 2012 года
Спустя почти три года с момента выхода ветки 5.3 представлен релиз языка программирования PHP 5.4.0. Среди ключевых особенностей новой ветки отмечается реализация поддержки конструкции "Traits" и сокращенного синтаксиса массивов, увеличение производительности и сокращение потребления памяти, поддержка многобайтовых символов для всех сборок, добавление встроенного web-сервера в SAPI-модуль CLI. В новой ветке удалены некоторые устаревшие возможности языка и опции настройки, поэтому версия 5.4 не обеспечивает полную совместимость на уровне API и конфигурации. При использовании PHP 5.4 может потребоваться модификация приложений и серверных настроек (например, удалена поддержка Safe mode и register_globals).
PHP 5.4 является первой веткой, разработка которой велась в рамках нового регламента подготовки релизов, подразумевающего плановую подготовку выпусков через фиксированные промежутки времени с оформлением тестовых версий в процессе разработки. В соответствии с новым регламентом, значительные релизы PHP, содержащие новшества, будут выходить раз в год, а время поддержки новой ветки составит три года.
Основные особенности PHP 5.4.0:
- Изменения (Архивная копия от 27 октября 2020 на Wayback Machine), нарушающие совместимость:
- Прекращение поддержки всех опций, связанных с режимом "Safe mode(недоступная ссылка)";
- Прекращение поддержки настроек для автоматического экранирования специальных символов в поступающих из вне данных (" magic quotes (Архивная копия от 18 ноября 2008 на Wayback Machine)");
- Прекращение поддержки синтаксиса "break/ continue $var"
- Удаление конфигурационных опций register_globals (Архивная копия от 18 мая 2008 на Wayback Machine), define_syslog_variables, highlight.bg, session.bug_compat42, session.bug_compat_warn, y2k_compliance, allow_call_time_pass_reference и register_long_arrays;
- Удаление функций session_is_regisitered(), session_registered() и session_unregister().
- В поставляемых файлах конфигурации в опции default_charset вместо "ISO-8859-1" теперь задана кодировка "UTF-8", но по умолчанию, при отсутствии данной опции, по прежнему используется пустое значение ("");
- Удалена поддержка hash-алгоритмов Salsa10 и Salsa20.
- В расширении Date прекращена поддержка изменения часового пояса через переменную окружения TZ;
- Функция array_combine() отныне возвращает значение array() вместо FALSE, если на вход переданы два пустых массива;
- Увеличение производительности и оптимизация потребления памяти в Zend Engine. Работа по оптимизации проведена большая, улучшений очень много и они затрагивают различные части внутренностей PHP. Например, в тесте bench.php производительность PHP возросла на 19%, а в тесте micro_bench.php на 26%. При оценке скорости выполнения реальных приложений (c использованием акселератора APC) отмечается ускорение работы CMS typo3 на 6%, WordPress на 8%, drupal на 2%, xoops на 14% и scrum на 13%;
- Поддержка языковой конструкции "
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.