PHP 7 10 cosas que necesitas saber
¿Eres un desarrollador web o propietario de un sitio web? ¿Sus sitios se ejecutan en un CMS habilitado para PHP como WordPress, Drupal, Joomla o Magento? Entonces, tengo una buena noticia para ti: la beta completa de características del nuevo PHP 7 fue lanzado recientemente. La versión principal 7.0.0 contiene tantas características interesantes que decidimos dedicarle una publicación completa. Pero primero, necesitamos deslizar algunos recordatorios..
Tenga en cuenta que PHP 7 todavía está en la fase de desarrollo, por lo que no lo uses en producción hasta noviembre cuando el versión definitiva será realizado. Si, como futuro usuario, desea obtener una parte justa del proceso de desarrollo, puede ayudar a descargar la versión beta más reciente, a jugar con ella en su entorno de prueba e informar sobre los errores que detectó durante la prueba. Para saber cuándo saldrá la próxima versión beta, aquí está el calendario del proyecto.
Con eso fuera del camino, echemos un vistazo a PHP 7.
1. El PHP 7 del nombre (no 6)
La versión estable actual utiliza el número de versión PHP 5.6. Después de algunas disputas, el equipo de desarrollo decidió que omitirían el nombre de PHP 6 para el próximo lanzamiento importante. 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. La marca Spanking New Zend Engine
El motor Zend ha estado alimentando 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. El uso actual de la serie PHP 5.X Zend Engine II que mejoró la funcionalidad del motor inicial y añade una modelo de objeto extensible y un mejora significativa del rendimiento a la lengua.
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 reformuló el motor de 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. Usando PHP 7 no solo tu código será ejecutado más rápido pero tu tambien Necesita menos servidores para atender a la misma cantidad de usuarios..
4. Facilita el manejo de errores
Para decir lo menos, el manejo de errores fatales fatales y detectables nunca ha sido una tarea fácil para los codificadores PHP. El nuevo Excepciones del motor Le permitirá 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..
El nuevo \ EngineException los objetos no extienden el \Excepción Clase base Esto garantiza la compatibilidad con versiones anteriores y da como resultado dos tipos diferentes de excepciones en el manejo de errores: tradicional y excepciones de motor.
Para permitir que los programadores detecten ambos, PHP 7 introduce una nueva clase de padres compartida bajo el nombre de \ BaseException.
5. Soporte para 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 soporte para archivos grandes o enteros de 64 bits, por lo que hasta ahora se han considerado compilaciones x64 experimental.
PHP 7 cambiará esto ya que introduce soporte consistente de 64 bits lo que significa que tanto los enteros nativos de 64 bits como los archivos grandes serán compatibles, 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 unión nula
los Operador de nave espacial corre bajo el nombre oficial de Operador de Comparación Combinado. La notación del nuevo operador se ve así: <=>
(Algo así como una nave espacial simplificada, si lo imaginas 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.
El operador de unión nula se denota con dos signos de interrogación (??). Puede usarlo cuando desee comprobar si existe algo y devolver un valor predeterminado, en caso de que no exista. El operador coalesce devuelve el resultado de su primer operando si existe y no es nulo, y el segundo operando en cualquier otro caso.
Así es como el nuevo operador reduce el tiempo dedicado a las declaraciones básicas:
7. Habilita Declaraciones de Tipo Preciso
¿Alguna vez ha querido evitar los 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 de abajo muestra un caso de uso muy simple donde el foo () Se supone que la función devuelve una matriz. Echa un vistazo a ejemplos más complicados aquí.
Para mejorar aún más la función, PHP 7 presenta 4 nuevas declaraciones de tipos para tipos escalares: int, float, string y bool. Los nuevos tipos escalares permiten a los desarrolladores denotar que esperan que se devuelvan enteros, flotantes, cadenas o valores booleanos. Los nuevos tipos de escalas introducidos por PHP 7 también serán compatibles con el argumento Sugerencias de tipo que permite a los desarrolladores forzar el tipo de parámetros desde la serie PHP 5.X.
8. Agrega clases anónimas
PHP 7 le permite usar clases anónimas, una práctica ya establecida en otros lenguajes orientados a objetos como C # y Java. Una clase anónima es una clase sin nombre. El objeto que instancia tiene la misma funcionalidad que un objeto de una clase nombrada.
La sintaxis es la misma a la que estamos acostumbrados en las clases de PHP tradicionales, solo falta el nombre. Si las clases anónimas se usan bien, pueden acelerar la codificación, así como el tiempo de ejecución. Las clases anónimas son excelentes cuando una clase se usa solo una vez durante la ejecución y en los casos en que no es necesario documentar una clase.
9. Facilita las importaciones desde el mismo espacio de nombres
La nueva función de Declaraciones de uso de grupo será un regalo 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 fácil de usar, 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 de grupo 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 de las API y extensiones de servidor antiguas y no compatibles. Si desea comprobar cuáles son estos en detalle, haga clic aquí y aquí.
Todos los elementos eliminados han quedado en desuso por un tiempo en PHP 5, por lo que lo más probable es que no los haya usado durante mucho tiempo. Sin embargo, tenga en cuenta si tiene una aplicación heredada ejecutándose en versiones anteriores de PHP el nuevo PHP 7 puede potencialmente romper el código.