Diferencia entre revisiones de «PHP 8.1»
([feat] Add information about PHP 8.1 - readonly properties) |
|||
Línea 38: | Línea 38: | ||
class Test { | class Test { | ||
public readonly string $Arsys; | public readonly string $Arsys; | ||
public function __construct(string $Arsys) { | public function __construct(string $Arsys) { | ||
// Legal initialization. | // Legal initialization. |
Revisión del 10:09 10 jul 2022
Descripción
PHP 8.1 trae novedades importantes, nuevas funciones y un rendimiento optimizado. Mejora la versión anterior y está disponible en su página oficial desde el 25 de noviembre de 2021.
Nuevas características
Enums
Enum para abreviar o "Enumeraciones", es un tipo enumerado que tiene un número fijo de posibles valores.
Imaginemos una baraja de cartas con oros, copas, espadas y bastos, siendo estos palos los cuatro fijos de la baraja.
Con Enum, los palos los podemos enumerar de este modo en PHP:
enum Palo { case Copas; case Espadas; case Bastos; case Oros; }
Con Palo Enum, se puede aplicar tipos al aceptar o devolver un valor de palo de este modo:
function elige_carta(Palo $palo) {}
elige_carta (Palo::Copas); elige_carta (Palo::Espadas); elige_carta (Palo::Bastos); elige_carta (Palo::Oros);
Las enumeraciones hacen que el código se lea mejor e impiden un estado inesperado de la aplicación.
Propiedades Readonly
PHP 8.1 incluye soporte para propiedades readonly (solo lectura). Una vez declaradas solo pueden ser inicializadas una vez y no se puede modificar nunca su valor, porque si lo hacemos se produciría una excepción de error.
Un ejemplo sería el siguiente:
class Test { public readonly string $Arsys; public function __construct(string $Arsys) { // Legal initialization. $this->Arsys= $Arsys; } }