- PVSM.RU - https://www.pvsm.ru -

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

Вчера команда разработки PHP объявила об официальном выходе PHP 5.5.0!

Предыдущий мажерный релиз 5.4 был выпущен чуть больше года назад (1 марта 2012 года), а 5.3 аж в 2009 году (30 июня) — легко заметить, что разработка PHP наращивает темп!

Кратко о новых возможностях можно прочитать в посте на официальном сайте [1].

Тем кому интересно больше подробностей и на русском прошу под кат.

Новые ключевые возможности

  • Генераторы и корутины (generators and coroutines): документация [2] и статья на хабре [3]
  • Ключевое слово finally: документация [4] и статья на хабре [5]
  • Password Hashing API — правильный способ хешировать пароли из коробки: документация [6]
  • 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 [7]. Впрочем, это расширение было доступно и раньше для PHP 5.2, 5.3 и 5.4 для ручной установки.
  • Обновлена библиотека GD, в частности появилась поддержа WebP

Изменения совместимости

  • PHP logo и GUIDs были удалены :(
  • Удалена поддержка Windows XP и 2003
  • Регистронезависмые функции (case insensitive) теперь работают вне зависимости от локали а используют стандартные правила ASCII

Ссылки:

Автор: PQR

Источник [12]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/php-2/37058

Ссылки в тексте:

[1] посте на официальном сайте: http://php.net/archive/2013.php#id2013-06-20-1

[2] документация: http://php.net/generators

[3] статья на хабре: http://habrahabr.ru/post/164173/

[4] документация: http://php.net/exceptions

[5] статья на хабре: http://habrahabr.ru/post/149314/

[6] документация: http://php.net/password

[7] OPcache extension: http://php.net/manual/en/book.opcache.php

[8] Более подробный список нововведений на английском: https://gist.github.com/nikic/5213689

[9] Руководство по переходу с версии 5.4 на 5.5: http://php.net/migration55

[10] Полный официальный ChangeLog: http://php.net/ChangeLog-5.php#5.5.0

[11] Ссылки на скачивание: http://www.php.net/downloads.php#v5

[12] Источник: http://habrahabr.ru/post/184142/