Новые возможности

PHP 5.4.0 предлагает широкий спектр новых возможностей:

  • Добавлена поддержка трейтов.
  • Добавлен короткий синтаксис объявления массивов. Например, $a = [1, 2, 3, 4]; или $a = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4];.
  • Добавлена возможность разыменования массивов, возвращаемых функциями. Например: foo()[0].
  • Классы для создания анонимных функций (Closures) теперь поддерживают $this.
  • Оператор <?= теперь доступен всегда, несмотря на значение php.ini опции short_open_tag.
  • Добавлена возможность получения доступа к члену класса при создании экземпляра. Например: (new Foo)->bar().
  • Теперь поддерживается такой синтаксис: Class::{expr}().
  • Добавлен бинарный формат задания чисел, например: 0b001001101.
  • Улучшены сообщения об ошибках разбора и предупреждения о несовместимых аргументах.
  • Расширение по работе с сессиями теперь может отслеживать процесс загрузки файлов.
  • Встроенный веб-сервер в режиме командной строки для разработчиков.
  • Расширение GD теперь поддерживает чтение и запись изображений WebP с помощью imagecreatefromwebp() и imagewebp(), соответственно.
add a note add a note

User Contributed Notes 3 notes

up
28
Nick Garvey
12 years ago
'callable' was implemented as a typehint in 5.4
up
4
Joris Berthelot
6 years ago
PHP 5.4 also allows to use arrays in switch:

<?php

$foo
= 1;
$bar = 2;

switch([
$foo, $bar]) {
    case [
1, 2]:
        echo
'case 1';
        break;
    case [
2, 2]:
        echo
'case 2';
        break;
    case [
3, 4]:
        echo
'case 3';
        break;
}

// Will output  "case 1"
?>
up
9
dave1010 at gmail dot com
12 years ago
As of PHP 5.4, the CLI (using readline) no longer dies on fatal errors (for example calling undefined functions).
To Top