Поиск по сайту:
О многом писать можно гораздо смелее, чем говорить (П. Абеляр).

PHP 8.3

PHP 8.3

 

PHP 8.3, выпущенный 23 ноября 2023 года, является значительным обновлением языка PHP. Он включает в себя множество новых функций, а также улучшения производительности, исправление ошибок и общую чистку.

 

Новые функции PHP 8.3

Типизированные константы классов

В PHP 8.3 константы классов теперь могут иметь явный тип. Это позволяет улучшить типизацию и уменьшить количество ошибок. Например, вместо следующего кода:

class MyClass {
    public const PI = 3.14;
}

$pi = MyClass::PI;

можно написать:

class MyClass {
    public const PI: float = 3.14;
}

$pi = MyClass::PI;

Функция json_validate

Новая функция json_validate() позволяет проверить JSON-объект на соответствие определенному формату. Функция принимает JSON-объект в качестве входных данных и возвращает true, если объект соответствует формату, или false в противном случае. Например, следующий код проверяет, что JSON-объект содержит только числа:

$json = '{"a": 1, "b": 2, "c": 3}';

if (json_validate($json, ['type' => 'array', 'items' => ['type' => 'integer']])) {
    echo "JSON-объект соответствует формату";
} else {
    echo "JSON-объект не соответствует формату";
}

Поддержка динамического доступа к константам классов и членам перечислений

В PHP 8.3 стало возможно выполнять динамический доступ к константам классов и членам перечислений. Это означает, что можно получить доступ к константе класса или члену перечисления без необходимости предварительно объявлять его. Например, следующий код получает константу PI из класса MyClass:

class MyClass {
    public const PI = 3.14;
}

$pi = MyClass::PI;

$pi2 = MyClass::getConstant('PI');

echo $pi2; // 3.14

Возврат дополнительной информации из gc_status()

Функция gc_status() теперь возвращает дополнительную информацию о сборке мусора. Эта информация может быть полезна для оптимизации производительности приложения. Например, следующий код возвращает количество объектов в куче:

$info = gc_status();

echo $info['num_objects']; // Количество объектов в куче

Новые методы в расширении Random

Расширение Random получило два новых метода:

  • getBytesFromString(): возвращает массив байтов из строки.
  • getFloat(): возвращает случайное вещественное число.

 

Изменения в синтаксисе и функциональности

unserialize(): ошибки E_NOTICE при сериализации/десериализации теперь повышаются до E_WARNING.

highlight_file() и highlight_string: вывод HTML изменен.

Добавлены гранулированные исключения DateTime.

В некоторых классах расширений PHP добавлены объявления типов констант классов.

Улучшения производительности

  • Улучшена производительность обработки строк.
  • Улучшена производительность обработки массивов.
  • Улучшена производительность обработки объектов.

 

Исправления ошибок

  • Исправлено более 100 ошибок.

 

Общие улучшения

  • Добавлены новые операторы.
  • Добавлены новые функции.
  • Добавлены новые глобальные константы.

 

Заключение

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

 

Дополнительные сведения

Для получения дополнительной информации о PHP 8.3 посетите сайт PHP.net.

Вышел PHP 8.3: новые возможности и улучшения

Вышел PHP 8.3: новые возможности и улучшения

-

PHP 8.3, выпущенный 23 ноября 2023 года, является важным обновлением языка, которое вносит множество новых возможностей и улучшений. В этой статье мы рассмотрим некоторые из наиболее важных изменений, а также примеры того, как их можно

Кол-во комментариев: 0

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: