¿Cuáles son las ventajas y desventajas de usar PHP 5.x versus PHP 7?

Fuente: PHP 7: 10 cosas que debes saber

1. El nombre PHP 7 (no 6)

La versión estable actual utiliza el número de versión PHP 5.6. Después de alguna disputa, el equipo de desarrollo decidió que omitirían el nombre de PHP 6 para la próxima versión principal. PHP 6 ya existía en el pasado como un proyecto experimental, pero nunca llegó a la fase de producción.

Para evitar que los usuarios mezclen el intento anterior con el último desarrollo, la nueva versión principal se ejecutará bajo el nombre de PHP 7.

2. El nuevo motor Zend de Spanking

El motor Zend ha estado impulsando PHP desde 1999 cuando se introdujo con la nueva versión de PHP 4. Zend, que no debe confundirse con Zend Framework, es un motor de ejecución de código abierto escrito en C que interpreta el lenguaje PHP. La serie PHP 5.X actual usa Zend Engine II que mejoró la funcionalidad del motor inicial y agrega un modelo de objeto extensible y una mejora significativa en el rendimiento del lenguaje.

PHP 7 recibe una nueva versión del motor con el nombre en código de PHP # NG (Next Generation).

3. Dos veces la velocidad

La ventaja más fácilmente reconocible del nuevo motor PHPNG es la mejora significativa del rendimiento. El equipo de desarrollo de PHPNG refactorizó el motor Zend y optimizó notablemente el uso de la memoria.

¿Los resultados? Puede ver los puntos de referencia de rendimiento proporcionados por el Equipo de rendimiento de Zend a continuación. Al usar PHP 7, no solo su código se ejecutará más rápido, sino que también necesitará menos servidores para atender a la misma cantidad de usuarios .

4. Facilita el manejo de errores

Por decir lo menos, manejar errores fatales fatales y detectables nunca ha sido una tarea fácil para los codificadores de PHP. Las nuevas excepciones del motor le permitirán reemplazar este tipo de errores con excepciones. Si no se detecta la excepción, PHP continuará devolviendo los mismos errores fatales que en la serie 5.X actual.

5. Soporte de sistemas Windows de 64 bits

PHP es un miembro destacado de la pila LAMP, lo que significa que su entorno nativo es Linux, pero también es posible ejecutarlo en un sistema Windows. La serie 5.X aún no proporciona un número entero de 64 bits o compatibilidad con archivos grandes, por lo que hasta ahora las compilaciones x64 se han considerado experimentales .

PHP 7 cambiará esto, ya que presenta un soporte consistente de 64 bits, lo que significa que serán compatibles tanto los enteros nativos de 64 bits como los archivos grandes, lo que le permitirá ejecutar con confianza el idioma en su sistema Windows de 64 bits en el futuro.

6. Nueva nave espacial y operadores de fusión nula

El operador de nave espacial se ejecuta con el nombre oficial de Operador de comparación combinada. La notación del nuevo operador se ve así: (algo así como una nave espacial simplificada, si lo imagina bien).

El operador de la nave espacial devuelve 0 si ambos operandos son iguales, 1 si la izquierda es mayor y -1 si la derecha es mayor. También se llama un operador de comparación de tres vías , y ya existe en otros lenguajes de programación populares como Perl y Ruby.

7. Permite declaraciones de tipo precisas

¿Alguna vez ha querido evitar valores de retorno involuntarios declarando el tipo de retorno de una función? Bueno, el nuevo PHP 7 permite a los desarrolladores mejorar la calidad de su código con la ayuda de declaraciones de tipo de retorno.

La imagen a continuación muestra un caso de uso muy simple en el que se supone que la función foo () devuelve una matriz. Mira ejemplos más complicados aquí.

8. Agrega clases anónimas

PHP 7 le permite usar clases anónimas, una práctica bien establecida en otros lenguajes orientados a objetos como C # y Java. Una clase anónima es una clase sin nombre. El objeto que crea una instancia tiene la misma funcionalidad que un objeto de una clase con nombre.

9. Facilita las importaciones desde el mismo espacio de nombres

La nueva función de Declaraciones de uso grupal estará ausente para aquellos de ustedes que quieran importar muchas clases desde el mismo espacio de nombres . La nueva sintaxis reduce la verbosidad, hace que su código sea más ordenado y más fácil a la vista, y le ahorra mucho tiempo de escritura.

También será más fácil leer y depurar códigos, ya que las declaraciones de uso grupal lo ayudan a identificar las importaciones que pertenecen al mismo módulo.

10. limpia la habitación

El objetivo de PHP 7 era liberar el espacio para permitir la mejora, por lo que era necesario deshacerse de muchas funcionalidades obsoletas y API y extensiones de servidor antiguas y no compatibles. Si desea verificar cuáles son estos en detalle, haga clic aquí y aquí.

Todos los elementos eliminados han quedado obsoletos durante un tiempo en PHP 5, por lo que lo más probable es que no los haya utilizado durante mucho tiempo. Sin embargo, tenga en cuenta que si tiene una aplicación heredada que se ejecuta en versiones anteriores de PHP, el nuevo PHP 7 puede potencialmente romper el código .

Php7 no ha lanzado la Web todavía. Todavía es nuevo y fresco.

Y seguro que es mucho mejor que 5.xx en tantas cosas [1]

Sin embargo, si está buscando los beneficios de usar 5.xx sobre 7.xx, diría:

1- compatibilidad con los códigos y bibliotecas muy antiguas.

2- parece más familiar para los desarrolladores.

Esto es lo que se me ocurrió por ahora, actualizaré esta respuesta si es necesario.

Notas al pie

[1] PHP7 vs PHP5 API Benchmark