Generalidades de PHP 7

Generalidades

PHP 7 es la próxima actualización importante del lenguaje de programación PHP que ofrece varios beneficios sobre las versiones anteriores, como una nueva versión de Zend Engine y un rendimiento más rápido.

PHP 7 también ha eliminado varias funciones obsoletas de versiones anteriores. Debido a esto, los usuarios no deben actualizar sus sitios hasta que estén seguros de que todo es totalmente compatible con la nueva versión.

Consulta el siguiente artículo para obtener instrucciones sobre cómo actualizar la versión PHP de tu sitio:

Beneficios

La siguiente lista está tomada de php.net:

  • Rendimiento mejorado: PHP 7 es hasta dos veces más rápido que PHP 5.6
  • Uso de memoria significativamente reducido
  • Árbol de sintaxis abstracta
  • Soporte consistente de 64 bits
  • Jerarquía de excepciones mejorada
  • Muchos errores fatales convertidos en excepciones
  • Generador seguro de números aleatorios
  • Se eliminaron SAPI y extensiones antiguas y no compatibles
  • El operador de fusión nulo (??)
  • Declaraciones de tipo de retorno y escalar
  • Clases anónimas
  • Cero costo afirma

Pautas generales de actualización

  • Puedes actualizar la versión PHP de su sitio en tu panel.
  • Asegúrate de que tu software y todos los complementos/temas/extensiones sean compatibles con PHP 7 antes de actualizar.
  • Asegúrate de que las consultas de su base de datos estén usando mysqli o PDO_MySQL para conectarte, ya que la extensión mysql se ha eliminado. Consulta la sección "Mi sitio no se conectará a mi base de datos después de actualizar a PHP 7" a continuación para obtener detalles.

PHP 7.3 Problemas conocidos

JIT compilation failed: no más errores de memoria

Si ves errores de "Error de compilación JIT: no más memoria o JIT compilation failed: no more memory" en tu sitio, esto se debe a un error conocido en PHP 7.3. Para evitar esto, puede deshabilitar el compilador JIT agregando la siguiente línea a su archivo phprc:

pcre.jit = 0

Si necesita ayuda para crear y/o modificar este archivo, consulta las siguientes instrucciones: ompiler agregando la siguiente línea a su archivo phprc:

Alternativamente, es posible que desee simplemente volver a PHP 7.2 en tu panel DreamHost.

mcrypt.so

El soporte para mcrypt se ha eliminado a partir de PHP 7.2.0. Cualquier script que dependa de mcrypt deberá actualizarse para usar OpenSSL o Sodium.

Preguntas Frecuentes

¿Qué pasó con PHP 6?

Esta era una versión de desarrollo que nunca se convirtió en un lanzamiento oficial. Ve los siguientes enlaces para más información:

¿PHP 7 está disponible en máquinas Nginx?

No. Actualmente solo PHP 5.6 está disponible.

Solución de problemas

Mi sitio no se conectará a mi base de datos después de actualizar a PHP 7

Las versiones anteriores de PHP ofrecían tres API de PHP para acceder a una base de datos MySQL. Ellos eran:

PHP 7 ha eliminado el soporte para la extensión mysql y afecta lo siguiente:

  • ACualquier consulta que use una función mysql_connect no funcionará.
  • PHP 7 solo permite conexiones a una base de datos MySQL usando mysqli o PDO_MySQL.

Todos los scripts deben actualizarse para continuar funcionando.

Mi sitio de WordPress no funciona después de actualizar a PHP 7

Las versiones anteriores de WordPress, así como algunos temas / complementos, no son compatibles con PHP 7. El comando wp-cli wp php-compat comprueba la compatibilidad de cualquiera de estos elementos con PHP 7.0 o superior:

[server]$ wp php-compat

+-----------+--------+---------+---------+--------+-------+
| name      | type   | compat  | version | time   | files |
+-----------+--------+---------+---------+--------+-------+
| wordpress | core   | success | 5.3     | cached |       |
| akismet   | plugin | success | 4.1.3   | 1.25s  | 19    |
| button    | theme  | success | 1.0.4   | 0.33s  | 23    |
+-----------+--------+---------+---------+--------+-------+

Para probar una versión específica de PHP, agrega --php_version=(version.number) hasta el final del comando, reemplazando (version.number) con el número de versión de PHP para probar. Por ejemplo:

[server]$ wp php-compat --php_version=7.2

+-----------+--------+---------+---------+--------+-------+
| name      | type   | compat  | version | time   | files |
+-----------+--------+---------+---------+--------+-------+
| wordpress | core   | success | 5.3     | cached |       |
| akismet   | plugin | success | 4.1.3   | 1.25s  | 19    |
| button    | theme  | success | 1.0.4   | 0.33s  | 23    |
+-----------+--------+---------+---------+--------+-------+ 

Ver también

 

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?