PHP es uno de los lenguajes de scripting más populares en la web hoy en día. De acuerdo a W3TechsPHP es usado por más de 78% de todos los sitios web que utilizan un lenguaje de programación del lado del servidor. Esto significa que casi para cada 8 de cada 10 sitios web que visita, es más probable que utilicen versiones de PHP de alguna forma u otra, lo que también significa que PHP no está muerto. Y, por supuesto, juega un papel muy importante en lo que respecta al ecosistema de WordPress, ya que el CMS completo está basado en PHP.

¿Necesita comprobar rápidamente su versión de PHP? Cree una página phpinfo.

Un dilema al que nos enfrentamos hoy es que muchas empresas, desarrolladores y hosts se han quedado atrás cuando se trata de soportar las últimas versiones de PHP. Algunas de las estadísticas a continuación pueden incluso sorprenderle. Hoy queremos discutir algunas de las razones por las que es tan importante que todos usen las últimas versiones de PHP, no sólo por razones de seguridad, sino también por un mejor rendimiento y soporte.

Versiones de PHP Viejas

Como con cualquier pieza de software, PHP tiene un ciclo de vida de lanzamiento en el que ha tenido que adherirse a fin de seguir impulsando las cosas y hacer mejoras. Cada versión principal de PHP suele estar completamente apoyada por dos años después de su liberación. Durante ese tiempo, los errores y los problemas de seguridad se corrigen y se parchan regularmente.

Versiones PHP soportadas para WordPress
Versiones PHP soportadas para WordPress

También puedes ver cómo se manejan las versiones más actuales de PHP.

Versiones de PHP soportadas actualmente
Versiones de PHP soportadas actualmente

PHP 5.6, 7.0, 7,1, 7.2, 7.3, y 7.4 – Final de su vida

El fin de la vida útil significa que estas versiones ya no tendrán soporte de seguridad y podrían estar expuestas a vulnerabilidades de seguridad sin parches.

  • El 28 de noviembre de 2022, PHP 7.4 ha finalizado su ciclo de vida.
  • El 6 de diciembre de 2021, PHP 7.3 ha finalizado su ciclo de vida.
  • A partir del 30 de noviembre de 2020, PHP 7.2 llegó a su fin de vida.
  • A partir del 1 de diciembre de 2019, PHP 7.1 llega al final de su vida útil.
  • A partir del 3 de diciembre de 2018, PHP 7.0 llega al final de su vida útil.
  • A partir del 31 de diciembre de 2018, PHP 5.6 también llega al final de su vida útil. Esto marca oficialmente el final de una era para PHP 5, ya que la primera versión, la 5.0, fue lanzada hace 14 años.

De acuerdo con la página oficial de estadísticas de WordPress, en el momento de escribir esto, más del 55% de los usuarios de WordPress siguen utilizando PHP 7.4 o inferior. Si combinamos esto con otras versiones de PHP al final de su vida útil, la friolera del 85% de los usuarios están utilizando actualmente versiones de PHP que ya no están soportadas desde noviembre de 2022.

Es aún más aterrador si mira las estadísticas fuera de la comunidad de WordPress. Según W3Techs PHP 5 actualmente es usado por 22,9% de todos los sitios que usan PHP.

Esto es malo no solamente desde el punto de vista de la seguridad pero también porque estos sitios no aprovechan las mejoras de rendimiento que acarrea el uso de PHP 8.2.

WordPress Estadísticas de la versión PHP
WordPress Estadísticas de la versión PHP

¿Por Qué Se Adoptan las Nuevas Versiones Tan Lento?

La razón principal de la falta de adopción más rápida para las nuevas versiones probablemente viene por algunos factores diferentes:

  • La razón número uno que vemos de los nuevos clientes que migran a Kinsta es que los dueños de negocios no conocen o se preocupan por su versión de PHP. Esto, por supuesto, es comprensible en algunos casos, ya que no esperamos que todos lo sepan. Muchas veces esta responsabilidad recae en el desarrollador, la agencia o el host.
  • Toma tiempo para que los desarrolladores actualicen su código para apoyar versiones más nuevas de PHP. Esto incluye aquellos que desarrollan sitios web, temas, plugins, etc.
  • No sólo requiere esfuerzo y tiempo para actualizar el código, sino que también puede requerir pruebas extensas para garantizar la compatibilidad. ¡El repositorio de WordPress solo tiene más de 49,000 plugins!
  • Muchos hosts de WordPress han sido reacios a empujar versiones actualizadas de PHP porque esto podría terminar dando como resultado tickets de soporte adicionales si rompe un sitio. Como alojamiento de aplicaciones, bases de datos y WordPress administrado, definitivamente lo entendemos, pero por nuestra experiencia, esto suele ser al revés. Muchos problemas de soporte que vemos son de problemas causados por versiones anteriores de PHP.
  • El desarrollador o la agencia puede estar atrapado entre una roca y un lugar duro al tratar con un cliente y otras aplicaciones de terceros que no están dispuestos a gastar recursos en la actualización.

Sin embargo, con todo lo dicho, todavía no es una excusa para ejecutar en una versión de PHP desactualizada, que no es compatible, y en realidad podría estar ralentizando su sitio WordPress. La buena noticia es que un poco de progreso está en curso. Se puede ver que PHP todavía tiene una enorme cuota de mercado y no va a ninguna parte.

Razones por las que Debería Actualizar Las Versiones de PHP

Eche un vistazo a algunas de las razones de abajo por qué usted debe pensar en la actualización si no lo ha hecho ya.

1. Seguridad

Una de las razones más importantes para actualizar PHP es asegurarse de que se esté ejecutando en una versión que sea totalmente compatible y parcheada regularmente para vulnerabilidades de seguridad. PHP 5.4 no ha sido parchado desde 2015. Y PHP 5.5 no ha sido parcheado desde 2016. Es importante tener en cuenta, sin embargo, que algunos vendedores de sistemas operativos todavía actualizan versiones anteriores de PHP si lo incluyeron.

De acuerdo con Detalles de CVE, 2016 fue en realidad uno de los años récord para las vulnerabilidades de seguridad de PHP, con más de 100 problemas reportados. Estos incluyen DoS, ejecución de código, desbordamiento, corrupción de memoria, XSS, traspaso de directorios, bypass, etc. Desde el año 2000 el año pasado era el tercer peor año con 40 vulnerabilidades.

Vulnerabilidades de seguridad de PHP por año
Vulnerabilidades de seguridad de PHP por año

Incluso los mismos PHP dan algunas sugerencias acerca de mantenerse actualizado:

PHP, como cualquier otro sistema grande, está bajo constante escrutinio y mejora. Cada nueva versión incluirá a menudo cambios mayores y menores para mejorar la seguridad y reparar cualquier defecto, percances de configuración y otros problemas que afectarán la seguridad general y la estabilidad de su sistema. Al igual que otros lenguajes y programas de secuencias de comandos a nivel de sistema, el mejor enfoque es actualizar a menudo y mantener la conciencia de las últimas versiones y sus cambios. PHP, Mantenerse al día

Lectura sugerida: Cómo mejorar el límite de memoria PHP en WordPress.

2. Rendimiento

Con el lanzamiento de PHP 7.2, 7.3, 7.4, y 8.0 llegaron enormes mejoras de rendimiento. 8.1 muestra aún más ganancias, y 8.2 acaba de ser lanzado. De hecho, es tan grande que debería ser una prioridad sobre muchas de las pequeñas optimizaciones con las que podrías estar trabajando en tu sitio de WordPress.

También ejecutamos nuestras propias pruebas de PHP. Y de forma similar a los benchmarks anteriores, hemos visto que PHP 8.0 y 8.1 ejecutan transacciones (peticiones) por segundo considerablemente más rápidas que las versiones anteriores.

Aunque Kinsta ya no soporta PHP 7.4, sí soportamos las versiones 7.4, 8.0, 8.1, 8.2, 8.3 y 8.4.

Benchmarks PHP WordPress 5.9-RC2
Benchmarks PHP WordPress 5.9-RC2

Christian Vigh también publicó una comparación de rendimiento en la que encontró que PHP 5.2 era 400% más lento que PHP 7.

Comparación de los resultados de punto de referencia puro de CPU
Comparación de los resultados de punto de referencia puro de CPU

3. Soporte

El soporte es otra razón por la que desea utilizar las versiones de PHP más recientes y compatibles. Muchas veces, los desarrolladores de plugins y temas sólo pueden extender la compatibilidad con versiones anteriores hasta ahora. Mucho de esto se debe a las limitaciones de tiempo y no tener tiempo para probar la compatibilidad. Las cosas finalmente se romperán cuando se ejecuta en versiones antiguas, y puede ver esto siendo testigo en los foros de WordPress. Aquí está un error común, que es causado típicamente por una versión más vieja de PHP y cómo trata una cierta función:

Parse error: syntax error, unexpected ‘’ (T_VARIABLE), expecting function (T_FUNCTION) in /pub/file.php on line xxx

Puede hacer una búsqueda en los foros de WordPress para «unexpected T_Function» y devuelve más de 2,000 hilos, muchos con resultados de dentro de los últimos dos días. Aquí hay sólo un par de recientes, todo debido a la ejecución de antiguas versiones de PHP:

Muchos de estos hilos se están abriendo debido al hecho de que se ejecutan en versiones obsoletas de PHP. Sin embargo, lo mismo podría decirse de los hilos que se abren debido a problemas de compatibilidad de PHP 7. Lo que demuestra que la comunidad de desarrollo de WordPress todavía está tratando de ponerse al día con las nuevas versiones de PHP.

4. Nuevas Características para Desarrolladores

La mayoría de los desarrolladores de WordPress preferirían trabajar sólo en versiones más nuevas de PHP si pudieran, simplemente debido al hecho de que ha habido tantas nuevas características añadidas entre PHP 5.2 y PHP 7.4. Unos cuantos cambios con PHP 7 y 7.3 incluyen:

  • Operador de comparación combinada
  • Operador de coalescencia nula
  • Nuevo tipo de insinuación
  • Clases anónimas
  • Tipos anulables
  • Retornos iterables y nulos
  • Manejo de excepciones de captura múltiple
  • Claves utilizables en listas
  • Más compensaciones negativas de la secuencia
  • Número de operadores y números mal formados
  • Empuje de servidor HTTP/2
  • Precarga
  • Operador Spread en expresión de arreglos
  • Funciones de flecha 2.0 (cierres cortos)
  • Operador de asignación de coalescencia nula
  • Propiedades escritas 2.0Referencias débiles
  • Devoluciones covariantes y parámetros de contravarianza
  • Nuevo mecanismo de serialización de objetos personalizados

No es divertido apoyar versiones antiguas de cualquier cosa. Desafortunadamente muchos desarrolladores están atascados teniendo que soportar una amplia gama de versiones.

Hay aún más características nuevas en PHP 8.0. Algunas de las más importantes incluyen:

  • Argumentos con nombre
  • Tipos de unión
  • Promoción de propiedades del constructor
  • Serialización personalizada de objetos
  • Expresión de coincidencia
  • Operador Nullsafe
  • Mejoras en el sistema de tipos y manejo de errores

Y justo detrás vienen PHP 8.1 y PHP 8.2. Ambas incluyen nuevas características, deprecaciones y cambios.

Asegúrese de que Su Host Soporta las Últimas Versiones de PHP

Tomó mucho tiempo, pero los requisitos de WordPress.org oficiales ahora recomiendan un host que ejecute PHP versión 7.3 o superior.

Yoast acaba de publicar un gran artículo llamado «Whipping Your Host Into Shape.» («Poniendo a su Host en forma») En el artículo Joost de Valk entra en detalles sobre cómo el problema real es que los proveedores de hosting no están adoptando esto más rápido, e incluso si lo están, no están animando a los usuarios a actualizar. Y Yoast va a hacer algo al respecto. A partir de Yoast SEO 4.5 van a empezar a mostrar un aviso en el tablero de WordPress para los sitios que se ejecutan en PHP 5.2. Este aviso será grande, feo y no descartable.

Si pudiéramos chocar los cinco con Yoast, ¡lo haríamos! Kinsta ha soportado las últimas versiones de PHP con cada versión estable.

Actualización: PHP 8.2 (versión oficial) ya está disponible para todos los clientes de Kinsta. PHP 7.4 ya no está soportado por Kinsta. Ten en cuenta que soportamos versiones de PHP 7.4, 8.0, 8.1, 8.2, 8.3 and 8.4

Estamos dedicados a crear el entorno más rápido y seguro del mercado, lo que significa que debemos asegurarnos de que todos los sitios utilicen tecnologías que reciben activamente actualizaciones de seguridad.

Eche un vistazo a nuestra guía en profundidad con instrucciones paso a paso sobre cómo actualizar de forma segura PHP en su sitio de WordPress.

Compruebe su Versión Actual de PHP

A lo mejor usted no sabe qué versión de PHP está actualmente en su sitio WordPress. Eche un vistazo a estas diferentes formas a continuación para averiguarlo.

1. Compruebe la Versión de PHP con Pingdom

Una de las maneras más fáciles de comprobar para ver qué versión de PHP está ejecutando es utilizar una herramienta como Pingdom o Google Chrome Devtools. La primera cabecera de solicitud HTTP normalmente le mostrará la versión.

Verificar versión de PHP en Pingdom
Verificar versión de PHP en Pingdom

Esto se basa en que el host no modifique el valor de la cabecera X-Powered-By. Algunos podrían quitar esto debido a problemas de seguridad. Si lo hacen, es posible que no vea su versión de PHP, en cuyo caso tendrá que usar una de las otras opciones a continuación. O usted puede alcanzar siempre buscar a su host y preguntar.

2. Check PHP Version in WordPress

If you’re running WordPress 5.0 or above, you can see the PHP version under the «Site Health» tool.

WordPress site health tool PHP version
WordPress site health tool PHP version

3. Compruebe la Versión de PHP con Archivo

También puede consultar su versión de PHP subiendo un archivo via FTP a su servidor.

Paso 1

Cree un archivo en blanco llamado phpinfo.php. En el archivo, pegue el siguiente contenido:

<?php
echo 'Current PHP version: ' . phpversion();
?>

Paso 2

Cargue el archivo en la raíz de su sitio de WordPress.

Cargar archivo phpinfo.php
Cargar archivo phpinfo.php

Paso 3

A continuación, busque la ubicación de su archivo, domain.com/phpinfo.php. A continuación, debe ver una lectura de su versión actual de PHP.

Verificar versión de PHP en navegador
Verificar versión de PHP en navegador

¿Qué Deberían Hacer los Usuarios Menos Técnicos o Sin Presupuesto?

Sabemos que hay miles de sitios WordPress incompatibles con las versiones nuevas de PHP ya sea que por un plugin o tema viejo. ¿Qué pueden hacer los usuarios no muy técnicos o aquellos que no disponen de un presupuesto muy elevado? Encontramos este problema muchas veces con clientes que migran a Kinsta y las versiones de PHP usadas llegan a su final de vida.

He aquí unas recomendaciones:

  1. Esto debe ser automático: siempre actualice sus plugins y temas.
  2. Contacte el desarrollador del plugin para agregar/arreglar el soporte de PHP 7.2, 7.3, 7.4 y 8.0. Siempre avisamos a nuestros clientes antes de eliminar una versión de PHP para que puedan prepararse. Esto es importante especialmente para aquellos que no pueden contratar un desarrollador.
  3. Busque un plugin alternativo con la misma funcionalidad que sea compatible con la versión de PHP. Gracias al repositorio enorme de WordPress y los miles de plugins premium hay una alternativa para todo.
  4. Aquellos con un presupuesto mayor siempre pueden contratar un desarrollador para solucionar el problema.

Cómo Actualizar PHP

¿Listo para actualizar? Genial, pero una de las primeras cosas que debe hacer es probar su sitio para garantizar la compatibilidad. Usted podría probar su sitio de WordPress localmente o mejor aún, utilizar un entorno de prueba, ya que se asemejará más a un sitio de producción en vivo. ¡Es mejor prevenir que lamentar!

Si usted es un cliente de Kinsta puede crear fácilmente un entorno de staging con un solo clic. Cambie la versión de PHP desde el panel de control y empiece a probar.

Crear un sitio de staging de WordPress
Crear un sitio de staging de WordPress

Y recuerde, si está actualizando desde una versión antigua de PHP, asegúrese de que también esté actualizando su instalación de WordPress también. Una nueva versión de PHP con una versión de 2 años de WordPress probablemente no terminará bien. Una vez que haya probado su sitio y esté listo para actualizar PHP, aquí tiene algunos recursos que le ayudarán a ir rápido.

Eche un vistazo a nuestra guía en profundidad con instrucciones paso a paso sobre cómo actualizar de forma segura PHP en su sitio de WordPress.

Actualice PHP con Kinsta

Si eres cliente de Kinsta, puedes cambiar fácilmente la versión de PHP haciendo clic en tu sitio, yendo a «Herramientas», y seleccionando un motor PHP diferente. Actualmente tenemos PHP 7.4, 8.0, 8.1, 8.2, 8.3 y 8.4 disponible.

Cambio de versiones PHP
Cambio de versiones PHP

En Kinsta, nuestra configuración PHP incluye una función de autocuración personalizada. Esto significa que el motor PHP de su sitio se reiniciará automáticamente si se cae. En el caso de que el reinicio automático de PHP no tenga éxito, nuestro sistema de monitoreo alertará a nuestro equipo de administradores de sistemas para que investiguen el problema.

Actualice PHP desde cPanel

Si su host utiliza cPanel lo más probable es que ya tienen una opción a su disposición para cambiar su versión de PHP. Simplemente ingrese a cPanel y en la categoría «Software» haga clic en «Seleccionar la versión de PHP».

Seleccionar versión de PHP
Seleccionar versión de PHP

A continuación, puede seleccionar las versiones de PHP disponibles que su host soporta.

PHP 7 en cPanel
PHP 7 en cPanel

Actualice PHP Manualmente en el Servidor

Si gestiona su propio servidor, le recomendamos que revise la documentación oficial de instalación de PHP, ya que las instrucciones variarán según el sistema operativo. Usted querrá ver los cambios con funciones, clases, envolturas, extensiones, módulos, etc. Aquí hay algunos enlaces a las guías de migración:

Resumen

Ahora es el momento de pensar en actualizar a PHP 8.0, 8.1 o 8.2 si aún no lo ha hecho. No sólo porque querrá estar ejecutándose en software compatible, sino porque tendrá garantías de rendimiento! Si su actual host no soporta PHP 8.0, 8.1, o 8.2 todavía, le recomendamos encarecidamente que busque un nuevo hosting. Y también con temas y plugins. Si el desarrollador todavía no ha publicado un parche, podría ser el momento de encontrar una alternativa.

¿Ha migrado recientemente a PHP 8.0, 8.1 o 8.2? Nos encantaría escuchar sus experiencias a continuación. ¿Fue una transición fácil? O tal vez usted todavía está atascado esperando a un tercero.

Brian Jackson

Brian tiene una gran pasión por WordPress, lo ha estado utilizando durante más de 10 años e incluso ha desarrollado un par de plugins premium. Brian disfruta de los blogs, las películas y el senderismo. Conéctese con Brian en Twitter.