В PHP 8.1 появились перечисления и свойства, доступные только для чтения.

автор vadim


PHP 8.1, объявленный крупным обновлением популярного языка сценариев для веб-разработки, был выпущен с широкими возможностями: от перечислений и свойств только для чтения до первоклассного вызываемого синтаксиса.

PHP 8.1 был выпущен 25 ноября. Исходный код и двоичные файлы Windows можно загрузить с php.net.

Перечисления или перечисления позволяют разработчикам определять собственный тип, ограниченный дискретным числом возможных значений. Согласно документации PHP, это может быть полезно при определении модели предметной области, «делая недопустимые состояния непредставимыми». В PHP случаи перечисления — это допустимые объекты, которые можно использовать везде, где может использоваться объект, включая проверки типов.

Другие новые функции и улучшения в PHP 8.1:

  • Волокна предоставляют примитивы для реализации облегченного параллелизма.
  • Благодаря первоклассному синтаксису вызываемых объектов замыкания для вызываемых объектов могут быть созданы с использованием синтаксиса myfunc(…)что идентично Closure::fromCallable('myFunc').
  • readonly Модификатор свойства предотвращает изменение свойства после инициализации.
  • Производительность была улучшена за счет JIT-компилятора (как раз вовремя) для ARM64, кэша наследования, быстрого разрешения имен классов и улучшений итераторов файловой системы стандартной библиотеки.
  • Благодаря инициализаторам объекты теперь можно использовать в качестве значений параметров по умолчанию, статических переменных и глобальных констант, а также использовать в аргументах атрибутов. Это эффективно позволяет использовать вложенные атрибуты.
  • Типы пересечений можно использовать, когда значение должно одновременно удовлетворять нескольким ограничениям типа.
  • Разработчики могут объявлять константы финального класса, поэтому их нельзя переопределить в дочерних классах.
  • Теперь можно записывать восьмеричные числа с явным выражением 0o префикс.
  • нever тип возвращаемого значения указывает, что функция не возвращает значение.
  • Массивы можно распаковывать с помощью строковых ключей.
  • Были представлены новые классы, функции и интерфейсы, включая атрибут для #[ReturnTypeWillChange].
  • Передача значения null в неизменяемые внутренние параметры функции устарела.

PHP 8.1 почти на год последовал за выпуском PHP 8.0, который предлагал такие функции, как типы объединения и компиляцию «точно в срок». Также новым для PHP в этом месяце стало создание PHP Foundation, некоммерческой организации, призванной обеспечить долгую жизнь и процветание PHP, в которую входят такие члены, как JetBrains и Zend. Участники сделают пожертвования на оплату зарплат основных разработчиков PHP.

Дальше читайте это:

  • Облачные вычисления больше не являются пустяком
  • Что такое генеративный ИИ? Искусственный интеллект, который создает
  • Программирование с помощью ИИ: советы и лучшие практики от разработчиков
  • Python пытается удалить GIL и повысить параллелизм
  • 7 причин, по которым Java по-прежнему хороша
  • Война за лицензирование открытого исходного кода окончена

Related Posts

Оставить комментарий