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.

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.

¿Buscando formas de mejorar el flujo de trabajo de desarrollo de WordPress?

La solución de alojamiento de Kinsta fue desarrollada por desarrolladores para desarrolladores. Git, PHP 7, SSH y WP-CLI, junto con los potentes entornos de prueba y clonación, le brindan las herramientas que necesita para crear sitios más rápido.
Versiones de PHP Compatibles

Versiones de PHP Compatibles

PHP 5.6 y PHP 7.0 – Final de su vida

El 3 de Diciembre de 2018 PHP 7.0 ha alcanzado su final de vida. Esto significa que no tendrán soporte de seguridad y estarán expuestos a parches de vulnerabilidad. El 31 de Diciembre de 2018 PHP 5.6 también alcanzado su fin de vida. Esto finalmente marcará el final de la era de PHP 5 ya que la primera versión fue lanzada hace 14 años.

Según la página oficial de Estadísticas de WordPress, al momento de escribir esto, más del 57% de los usuarios de WordPress todavía están en PHP 5.6 o inferior. Combinado con PHP 7 esto alcanza un 77,5%. Estos usuarios actualmente usan una versión que desde Enero de 2019 se deja de soportar.

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 73,1% de todos los sitios que usan PHP.

77,5% de los usuarios de WordPress ahora usan versiones de PHP que ya no son soportadas. 😮 Haga clic para Tweet

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 7.

Estadísticas de versión de PHP en WordPress

Estadísticas de versión de PHP en WordPress

¿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 un host de WordPress definitivamente entendemos esto, pero de nuestra experiencia, esto es típicamente 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. Jordi Boggiano cofundador de Private Packagist hace un informe anual sobre las estadísticas del uso de PHP. Y como se ve a continuación hay un movimiento hacia adelante. Esta es una muestra de las instalaciones de Composer sin embargo, es interesante ver los cambios.

Estadísticas del uso de PHP - por Jordi Boggiano

Estadísticas del uso de PHP – por Jordi Boggiano

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

2. Rendimiento

¡Con el lanzamiento de PHP 7.2 y PHP 7.3 se produjeron enormes ganancias de rendimiento! Tan grande de hecho, que debería ser la prioridad sobre una gran cantidad de las pequeñas optimizaciones que podría probar en su sitio WordPress. Los siguientes puntos de referencia demuestran mejoras significativas de rendimiento con PHP 7 sobre sus iteraciones anteriores. PHP 7 permite que el sistema ejecute el doble de solicitudes por segundo en comparación con PHP 5.6, con casi la mitad de latencia.

Puntos de Referencia PHP por Rasmus Lerdorf, PHP Fluent Talk

Puntos de Referencia PHP por Rasmus Lerdorf, PHP Fluent Talk

También ejecutamos nuestras propias pruebas de PHP. Y de manera similar a los puntos de referencia anteriores, vimos que PHP 7.3 podría ejecutar casi tres veces más transacciones (solicitudes) por segundo en comparación con PHP 5.6. PHP 7.3 también es en promedio un 9% más rápido que PHP 7.2.

Rendimiento de WordPress

Rendimiento de WordPress

  • WordPress 5.0 PHP 5.6 resultado de rendimiento: 91.64 sol/seg
  • WordPress 5.0 PHP 7.0 resultado de rendimiento: 206.71 sol/seg
  • WordPress 5.0 PHP 7.1 resultado de rendimiento: 210.98 sol/seg
  • WordPress 5.0 PHP 7.2 resultado de rendimiento: 229.18 sol/seg
  • WordPress 5.0 PHP 7.3 resultado de rendimiento: 253.20 req/seg 🏆

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.3. 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

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

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 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.

PHP 7 es el futuro (y hombre es lindo y rápido!). 🚀 -- Joost de Valk via @yoast @kinsta Haga clic para Tweet

Si pudiéramos darle a Yoast un “high five”, lo haríamos totalmente! Kinsta ha soportado las últimas versiones estables de PHP 7.2 y 7.3 desde sus versiones estables.

De hecho, cada instalación nueva de WordPress aquí en Kinsta por defecto va a PHP 7.3. Y PHP 5.6 es la versión mínima que permiten en nuestro entorno. Nota: PHP 5.6 y 7.0 serán eliminados próximamente. No y nunca alojaremos sitios de WordPress que se estén ejecutando en una versión no compatible de PHP. Animamos a la gente a moverse a 7.3 o más para el mejor rendimiento.

Si su host de WordPress está arrastrando sus talones para lanzar nuevas versiones de PHP, le recomendamos que busque un nuevo host. No dude en contactarnos para ver cómo podemos ayudar.

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ía que utilizar la segunda opción a continuación. O usted puede alcanzar siempre buscar a su host y preguntar.

Struggling with downtime and WordPress problems? Kinsta is the hosting solution designed to save you time! Vea nuestras características

2. 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 o 7.3. 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.

Entorno de staging

Entorno de staging

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.

Actualice PHP con Kinsta

Si usted es un cliente de Kinsta, puede fácilmente cambiar la versión de PHP haciendo clic en su sitio, yendo a “Herramientas”, y seleccionando un motor de PHP diferente. Ofrecemos PHP 5.6, 7.0, 7.1, 7.2 y PHP 7.3 disponibles. Nota: PHP 5.6 y 7.0 serán eliminados próximamente.

Cambiar versión de PHP

Cambiar versión de PHP

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 7.3 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 de WordPress no soporta PHP 7.3 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 7? 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.