Статьи

PHP 5.4 выпущен — что нового?

Трудно поверить, что с момента запуска PHP 5.3.0 прошло почти три года. Следующая версия должна была быть PHP 6.0, но проблемы с юникодом задержали разработку. Эта последняя версия предоставляет множество функций, запланированных для версии 6.0.

PHP 5.4 доступен для скачивания с сайта php.net . Если вы хотите сохранить свои старые настройки, есть руководство по миграции на PHP 5.3 . Пока он стабилен, советуем вам протестировать свои сайты и приложения перед его установкой на работающие серверы. Команда PHP часто выпускает версию с исправлением ошибок через несколько недель после первоначального выпуска.

Итак, давайте посмотрим на лучшие новые функции и улучшения …

Синтаксис короткого массива

Теперь можно использовать сохраняющие палец квадратные скобки, подобные JavaScript, вместо использования старой конструкции array(…) , например

 $array1 = [1, 2, 3]; $array2 = [ "one" => "first", "two" => "second", "three" => "third" ]; 

Черты

Черты уменьшают некоторые ограничения одиночного наследования. По сути, черты похожи на абстрактные классы и могут содержать любое количество свойств и методов. Класс может затем use любое количество признаков, например

 trait Hello { function sayHello() { return "Hello"; } } trait World { function sayWorld() { return "World"; } } class MyWorld { use Hello, World; } $world = new MyWorld(); echo $world->sayHello() . ' ' . $world->sayWorld(); 

Для получения дополнительной информации обратитесь к Использованию черт в PHP 5.4 на PHPmaster.com .

Встроенный веб-сервер

PHP 5.4 предлагает встроенный веб-сервер, который запускается из командной строки Windows, Mac или Linux. Хотя это не Apache или IIS, это хорошо для простого тестирования. Я подозреваю, что многие из лучших IDE PHP вскоре реализуют поддержку.

Для получения дополнительной информации обратитесь к новому встроенному веб-серверу PHP 5.4 .

Новые Команды

Был реализован ряд полезных команд:

  1. hextobin (строка $ hex) : охватывает шестнадцатеричное представление данных в двоичном виде.
  2. http_response_code (int $ code) : позволяет установить или получить код ответа HTTP, например http_response_code(404);
  3. header_register_callback (строка $ function) : позволяет зарегистрировать функцию, которая вызывается, когда PHP начинает отправлять вывод.
  4. trait_exists (строка $ name [, bool $ autoload]) : определяет, существует ли признак и, необязательно, должен ли он загружаться автоматически.

Разные обновления

Если этого недостаточно …

  • К членам класса можно получить доступ при (new MyClass)->MyMethod() экземпляра, например (new MyClass)->MyMethod()
  • <?=$variable?> всегда доступен независимо от того, как установлена ​​опция ini short_open_tag.
  • Двоичные числа могут быть объявлены, например, 0b11110000
  • Процесс загрузки сеанса был реализован, поэтому PHP может отслеживать состояние загрузки файлов.
  • Некоторые пользователи сообщают об увеличении скорости до 25% при уменьшении памяти на 35%.

Проблемы совместимости

Самый старый код PHP должен выполняться без изменений, но есть несколько ошибок, на которые стоит обратить внимание:

Следует также отметить, что PHP 5.4.x будет последней версией, поддерживающей Windows XP и Windows 2003.

PHP 5.4 не настолько радикальный, как 5.3, но есть достаточно новых функций, чтобы некоторое время радовать разработчиков. Дайте нам знать, если у вас есть положительный или отрицательный опыт работы с последней версией.