Разница версий PHP

Статья описывает какой функционал в какой версии языка появился.

PHP 7

Анонимные классы

PHP 7.1

Обнуляемые типы

Знак вопроса в примере ниже говорит о том, что функция может вернуть не только указанный тип, но и NULL

function testReturn(): ?string { ... }

Ничего не возвращающие функции VOID

Либо не содержит return, либо содержит return без параметра. NULL не является корректным значением для вывода.

function testFunc(): void { ... }

Видимость констант

Константам внутри классов можно назначать видимость через public, protected, private

class TestConst {
  public const PUB_CONST_A = 1;
}

PHP 7.2

Функция mail()

Добавлена возможность передавать дополнительные заголовки массивом

$headers = array(
  'From' => 'site@domain.ru',
  'Reply-To' => 'client@domain2.ru'
  'X-Mailer' => 'PHP/' . phpversion()
);
mail($to, $subject, $message, $headers);

Анонимные функции

Создание функций через create_function() является устаревшим. Вместо этого можно писать:

$logger = function( $product ){
  print "Записываем ({ $product->name })\r\n"
}

Создание анонимных функций появилось еще в PHP 5.3

© 2016 — 2020. При копировании материалов обязательна активная индексируемая ссылка на источник.