Saltar al contenido

PHP 8.1 fue liberado el 25 de noviembre de 2021 y es una actualización importante para PHP. Contiene muchas características nuevas y mejoradas, incluyendo enumeraciones, propiedades readonly, sintaxis first-class callable, fibers, tipos de intersección, mejoras de rendimiento y más.

Enumerables

Antes de PHP 8.1, para simular los enumerables, necesitábamos hacer lo siguiente:

A partir de PHP 8.1 podemos hacer lo siguiente:

Además, también podemos definir el tipo de dato de un enum de la siguiente forma:

Propiedades readonly

Antes de PHP 8.1, para definir propiedades de sólo lectura, debíamos hacer lo siguiente:

En PHP 8.1 podemos hacer uso de readonly en las propiedades de una clase de la siguiente forma:

Sintaxis First-class Callable

En PHP 8.1 es posible obtener una referencia a cualquier función; esto se llama sintaxis First-class Callable.

Expresión new en el constructor

Antes de PHP 8.1, para poder simular el uso de new en un constructor, necesitábamos hacer lo siguiente:

A partir de PHP 8.1 podemos hacer uso de new directamente de la siguiente forma:

Nuevo tipo de retorno never

Una función o método declarado con el tipo never indica que no devolverá un valor y producirá una excepción o finalizará la ejecución del script con una llamada de die(), exit(), trigger_error(), o similar.

Constantes de clase final

En PHP 8.1 es posible declarar la constante final en una clase, para que no puedan ser sobreescrita en las clases heredadas como sucedía en versiones anteriores de PHP.

Nueva función array_is_list

La función array_is_list() en PHP 8.1 devuelve verdadero si un array es una lista ordenada y secuencial de elementos, comenzando por el índice 0, y falso en caso contrario.


Novedades en PHP 8

Novedades en PHP 8.2

Novedades en PHP 8.3

Novedades en PHP 8.4

Novedades en PHP 8.5

Hasta aquí esta entrada revisando algunas de las más poderosas novedades de PHP 8, espero que te haya resultado útil, si quieres seguir conociendo todas las novedades de PHP 8 no te pierdas la ruta de PHP 8.

Rutas de aprendizaje