Articulos Podcast Cartas del editor
Las nuevas características de PHP 8 que se implementaron en 2021

Las nuevas características de PHP 8 que se implementaron en 2021

24 Sep, 2021 | 0

PHP 8 fue lanzado el 26 de noviembre de 2020. Es una versión mayor, lo que significa que introdujo algunos cambios de fondo, así como un montón de nuevas características y mejoras de rendimiento.

PHP está en el corazón de Drupal, WordPress, Joomla, Magento, OpenCart, Craft CMS, PyroCMS, OctoberCMS, Contao, ExpressionEngine y otros CMS. Además, este lenguaje de programación de código abierto, flexible, rápido y fácil de aprender, se utiliza en sitios web sin ningún CMS. Según las estadísticas, PHP funciona en el 79,1% de los sitios web cuyo lenguaje de programación de parte del servidor se conoce.

De hecho, en todos nuestros planes de Hosting puedes encontrar la versión PHP 8. ¿Aún no eres cliente de Imagina? contrata ahora nuestros servicios de alojamiento web, aprovecha nuestros descuentos y la mayor velocidad. 

Además, en la cuenta de cliente puedes cambiar la versión de PHP por la versión PHP 8 o la que necesites. ¡Contáctanos! 

 

Fin de PHP 7.2

PHP 5.6 y 7.0 quedaron obsoletas en su momento con la actualización de PHP 7.2 por ya no tener soporte de seguridad. Cuando fue lanzada en el 2014 la versión 5.6 fue la más usada a nivel mundial. Como todo, las nuevas versiones dejan obsoletas a las antiguas, no porque no se puedan usar, sino por el hecho de que son más vulnerables a ciberataques. Y, por supuesto, las nuevas versiones traen ventajas para los programadores.

El código PHP obsoleto tiene un efecto muy negativo en la seguridad de las páginas web. Los hackers siempre están buscando fallos de seguridad. Si esperas demasiado tiempo para actualizar tu PHP, estas vulnerabilidades aumentan. Mientras tanto, se supone que debido a los errores y fallos de seguridad hasta la versión 7.3.8 de PHP se pueden instalar programas de terceros y se pueden cambiar o incluso borrar datos.

A continuación, las actualizaciones más importantes en la última versión de PHP: 

 

JIT (Just In Time)

PHP es un lenguaje interpretado, y se han utilizado varias tácticas para mejorar el rendimiento de PHP en el pasado. El último paso para acelerar el rendimiento es la adición del compilador JIT en PHP 8.

El compilador JIT es una especie de término medio entre la compilación y la interpretación. Compilará y almacenará en caché algunas secciones de código en tiempo de ejecución para que la versión compilada pueda ser utilizada en lugar de la versión interpretada. 

Esto podría conducir a enormes ganancias de rendimiento para PHP, pero con algunas advertencias. Por lo general, los compiladores JIT benefician sobre todo a las aplicaciones que hacen un uso intensivo de la CPU, como el renderizado 3D o los grandes cálculos matemáticos. Es decir, mejora el rendimiento en comparación con las versiones anteriores de PHP.

 

Atributos

Los atributos de PHP 8 son una nueva forma de describir y otorgar un comportamiento especial a algunas clases. También es una alternativa más eficiente a la conocida forma PHPDoc de manejar estos casos. Para definir el atributo, tenemos que utilizar el siguiente patrón "#[ImpactClass]". Mientras se creaba la actualización "<<ImpactClass>>" también se consideró, pero acabó descartándose. Para muchos programadores expertos este es considerado un buen cambio pues es más limpio y más fácil de aplicar.

Los atributos se pueden utilizar para:
- Clases
- Propiedades y constantes
- Métodos y funciones
- Cierres
- Parámetros de métodos y funciones.
- Los atributos pueden añadirse antes, después o en lugar de los bloques PHPDoc.

 

Propagación de las propiedades

Esta característica de PHP 8.0 nos permite definir las propiedades de la clase directamente en los argumentos de su constructor y asignar sus valores inmediatamente sin escribir ningún código. La principal ventaja de esta solución es que permite el ahorro de un gran número de líneas de código escritas, siendo más cortas y legibles. 

 

Tipos de Unión (Union Types)

PHP 8 abre la puerta a declarar más de un tipo para las propiedades de las clases y las opciones de los métodos/funciones con esta característica. PHP 8 ahora soporta tipos de unión, que le permiten declarar más de un tipo en sus clases. Antes de la versión 8, PHP ya soportaba dos tipos de unión especiales: nullable e iterable.

Introdujo un nuevo pseudotipo en el sistema de tipos de PHP: mixed. Este pseudotipo permite declarar un valor de cualquier tipo sin excluir la información de tipo por completo.

 

Expresiones de coincidencia

Podemos describirlo como una versión corta de la sentencia switch case. La ventaja del match-over switch case es que podemos obtener un valor dependiendo del argumento del principio sin utilizar las palabras clave break o return. De manera similar a la promoción de propiedades del constructor, escribiremos menos código mientras logramos el mismo objetivo. 


Operador nullsafe

El nuevo operador nullsafe de PHP 8 facilita la vida de los desarrolladores. Como programador ya no necesitas recordar incluir una condición de comprobación de nulos o, en caso de que olvides hacerlo o escribas mal esta condición, no tendrás que ver un desagradable "Uncaught Error". El nuevo operador nullsafe hace las comprobaciones de nulos por ti y evalúa toda la cadena por si algún elemento de la cadena es nulo. ¡Menos errores!
 

¿Y tú? ¿Quieres la ventaja de tener tu servidor con la última versión PHP 8? ¡Contáctanos y empieza a gestionar tu proyecto en la web!

 

 

Dalai Belandria