21 июня 2013г. команда разработки PHP объявила об официальном выходе PHP 5.5.0!
Предыдущий мажерный релиз 5.4 был выпущен чуть больше года назад (1 марта 2012 года), а 5.3 аж в 2009 году (30 июня) — легко заметить, что разработка PHP наращивает темп!
Кратко о новых возможностях можно прочитать в посте на официальном сайте.
Новые ключевые возможности
- Генераторы и корутины (generators and coroutines): документация
- Ключевое слово finally: документация
- Password Hashing API — правильный способ хешировать пароли из коробки: документация
- array/string dereferencing, например, можно получить элемент массива сразу момент его объявления echo [1, 2, 3][0];, аналогично со строками echo 'PHP'[0];
- Теперь можно полчить имя класса используя ключевое слово ::class
namespace TestNS; class ClassName { } echo ClassName::class; //выводит TestNSClassName
- empty() можно применять к результатам функций или выражений без необходимости сохранять этот результат в отдельную переменную
- foreach теперь может работать с ключами не скалярного типа. В обычных PHP массивах таких ключей быть не может, но если вы используете foreach для обхода по собственно написанному итератору, то теперь вы можете возвращать любой тип в Iterator::key()
- Так же в foreach появилась возможность использовать list(), например:
$array = [ [1, 2], [3, 4], ]; foreach ($array as list($a, $b)) { echo "A: $a; B: $bn"; }
- Zend Optimiser+ был включён в составд дистрибутива как расширение OPcache extension. Впрочем, это расширение было доступно и раньше для PHP 5.2, 5.3 и 5.4 для ручной установки.
- Обновлена библиотека GD, в частности появилась поддержа WebP
Изменения совместимости
- PHP logo и GUIDs были удалены :(
- Удалена поддержка Windows XP и 2003
- Регистронезависмые функции (case insensitive) теперь работают вне зависимости от локали а используют стандартные правила ASCII
Ссылки:
Более подробный список нововведений на английском
Руководство по переходу с версии 5.4 на 5.5
Полный официальный ChangeLog
Ссылки на скачивание