Вышел финальный релиз PHP 5.5.0

в 9:19, , рубрики: php, php 5.5, метки:

Вчера команда разработки 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

Ссылки:

Автор: PQR

Источник

Поделиться

* - обязательные к заполнению поля