PHP est l’un des langages de script les plus populaires sur le web aujourd’hui. Selon W3Techs, PHP est utilisé par plus de 77 % de tous les sites web qui utilisent un langage de programmation côté serveur. Cela signifie que sur 8 sites web sur 10 que vous visitez, il est fort probable qu’ils utilisent PHP sous une forme ou une autre, ce qui signifie également que PHP n’est pas mort. Et bien sûr, il joue un rôle très important en ce qui concerne l’écosystème WordPress, car l’ensemble du CMS est construit sur PHP.

Besoin de vérifier rapidement votre version PHP ? Créez une page phpinfo.

Un dilemme auquel nous sommes confrontés aujourd’hui est que beaucoup d’entreprises, de développeurs et d’hébergeurs ont pris du retard lorsqu’il s’agit de supporter les dernières versions de PHP. Certaines des statistiques ci-dessous peuvent même vous choquer. Aujourd’hui, nous voulons discuter des raisons pour lesquelles il est si important que tout le monde utilise les dernières versions de PHP, non seulement pour des raisons de sécurité, mais aussi pour améliorer les performances et le support.

Anciennes versions de PHP

Comme pour tout logiciel, PHP a un cycle de vie de version dans lequel il doit adhérer afin de continuer à faire avancer les choses et à apporter des améliorations. Chaque version majeure de PHP est généralement entièrement prise en charge pendant deux ans après sa sortie. Pendant ce temps, les bogues et les problèmes de sécurité sont corrigés régulièrement.

Versions PHP prises en charge par WordPress
Versions PHP prises en charge par WordPress

Vous pouvez apprendre plus sur la façon dont les versions les plus récentes de PHP sont prises en charge.

Support des versions actuelles de PHP
Support des versions actuelles de PHP

PHP 5.6, 7.0, 7.1, 7.2, 7.3, et 7.4 EOL (Fin de vie)

Fin de vie signifie que ces versions n’auront plus de support de sécurité et pourraient être exposées à des vulnérabilités de sécurité non corrigées.

  • Depuis le 28 novembre 2022, PHP 7.4 a atteint sa fin de vie.
  • Le 6 décembre 2021, PHP 7.3 est arrivé en fin de vie.
  • Au 30 novembre 2020, PHP 7.2 a atteint sa fin de vie.
  • Le 1er décembre 2019, PHP 7.1 a atteint sa fin de vie.
  • Le 3 décembre 2018, PHP 7.0 a atteint sa fin de vie.
  • Au 31 décembre 2018, PHP 5.6 a également atteint sa fin de vie. Ceci marque officiellement la fin d’une ère pour PHP 5, puisque la première version, 5.0 a été lancée il y a 14 ans.

Selon la page officielle WordPress Stats, au moment d’écrire ces lignes, plus de 55 % des utilisateurs de WordPress sont toujours en PHP 7.4 ou moins. Si vous combinez cela avec d’autres versions PHP en fin de vie, 85 % des utilisateurs utilisent actuellement des versions PHP qui ne sont plus supportées à partir de novembre 2022.

C’est encore plus effrayant si vous regardez les statistiques en dehors de la communauté WordPress. Selon W3Techs, PHP 5 est actuellement utilisé par 22,9 % de tous les sites qui utilisent PHP.

Ce n’est pas seulement mauvais du point de vue de la sécurité, mais aussi parce qu’une grande partie des sites WordPress ne profitent toujours pas des améliorations de performance supplémentaires apportées par PHP 8.2.

Stats des version PHP de WordPress
Stats des version PHP de WordPress

Pourquoi une adoption lente des nouvelles versions ?

La raison principale de l’absence d’adoption plus rapide pour les nouvelles versions est probablement due à quelques facteurs différents :

  • La raison numéro un que nous voyons chez les nouveaux clients qui migrent vers Kinsta est que les propriétaires d’entreprises ne connaissent pas ou ne se soucient pas de leur version PHP. Cela est compréhensible dans certains cas, car nous ne nous attendons pas à ce que tout le monde le sache. Souvent, cette responsabilité incombe au développeur, à l’agence ou à l’hébergeur.
  • Il faut du temps aux développeurs pour mettre à jour leur code afin de supporter les nouvelles versions de PHP. Cela inclut ceux qui développent des sites Web, des thèmes, des extensions, etc.
  • Non seulement cela demande des efforts et du temps pour mettre à jour le code, mais cela peut aussi nécessiter des tests approfondis pour assurer la compatibilité. Le répertoire WordPress contient à lui seul plus de 49 000 extensions !
  • De nombreux hébergeurs WordPress hésitent à mettre à jour les versions de PHP, car cela pourrait entraîner des tickets de support supplémentaires en cas de problème sur un site. En tant qu’hébergeur d’applications, de bases de données et de WordPress infogéré, nous comprenons tout à fait cela, mais de notre expérience, c’est généralement l’inverse. De nombreux problèmes de support que nous voyons proviennent de problèmes causés par d’anciennes versions de PHP.
  • Le développeur ou l’agence peut être coincée lorsqu’elle traite avec un client et d’autres applications tierces qui ne sont pas disposés à dépenser des ressources pour la mise à jour.

Cela dit, ce n’est toujours pas une excuse pour utiliser des versions PHP obsolètes, non supportées et qui pourraient ralentir votre site WordPress. La bonne nouvelle, c’est que des progrès ont été réalisés. Vous pouvez voir que PHP détient toujours une énorme part de marché et qu’il ne va nulle part.

Raisons pour lesquelles vous devriez mettre à jour les versions PHP

Vérifiez quelques-unes des raisons ci-dessous pour lesquelles vous devriez penser à vous mettre à jour si vous ne l’avez pas déjà fait.

1. Sécurité

L’une des raisons les plus importantes pour mettre à jour PHP est de s’assurer que vous travaillez sur une version qui est entièrement supportée et patchée régulièrement pour les vulnérabilités de sécurité. PHP 5.4 n’a pas été patché depuis 2015. Et PHP 5.5 n’a pas été patché depuis 2016. Il est important de noter cependant que certains fournisseurs de systèmes d’exploitation continuent de mettre à jour les anciennes versions de PHP s’ils l’ont inclus.

Selon CVE Details, 2016 a été une année record pour les vulnérabilités de sécurité PHP, avec plus de 100 problèmes rapportés. Ceux-ci ont inclus DoS, exécution de code, débordement, corruption de mémoire, XSS, traversée de répertoire, contournement et types d’information de gain, 2017 a été la troisième pire année depuis l’année 2000 avec plus de 40 vulnérabilités.

Vulnérabilités de sécurité PHP par année
Vulnérabilités de sécurité PHP par année

Même PHP lui-même donne une certaine rétroaction pour rester à jour :

PHP, comme tout autre grand système, fait l’objet d’une surveillance et d’améliorations constantes. Chaque nouvelle version comprendra souvent des changements majeurs et mineurs pour améliorer la sécurité et réparer les failles, les incidents de configuration et autres problèmes qui affecteront la sécurité et la stabilité globale de votre système. Comme d’autres langages et programmes de script au niveau du système, la meilleure approche consiste à mettre à jour souvent et à se tenir au courant des dernières versions et de leurs changements. PHP, Keeping Current

Lectures suggérées : Comment améliorer la limite de mémoire PHP dans WordPress.

2. Performance

Avec la sortie de PHP 7.2, 7.3, 7.4, et 8.0, il y a eu d’énormes gains de performance ! La version 8.1 affiche encore plus de gains, et la version 8.2 vient d’être publiée. Les gains sont si importants, en fait, qu’ils devraient être une priorité par rapport à un grand nombre de petites optimisations avec lesquelles vous pourriez jouer sur votre site WordPress.

Nous avons également effectué nos propres Benchmarks PHP. Et de la même manière que les benchmarks ci-dessus, nous avons vu que PHP 8.0 et 8.1 exécutent les transactions (requêtes) par seconde considérablement plus rapidement que les anciennes versions.

Bien que Kinsta ne supporte plus PHP 7.4, nous prenons en charge les versions 8.0, 8.1, 8.2 et 8.3.

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

Christian Vigh a également publié une comparaison des performances de PHP dans laquelle il a trouvé que PHP 5.2 était 400% plus lent que PHP 7.

Comparaison des résultats des test de CPU purs
Comparaison des résultats des test de CPU purs

3. Support

Le support est une autre raison pour laquelle vous devez utiliser les dernières versions de PHP supportées. Souvent, les développeurs d’extensions et de thèmes ne peuvent étendre la prise en charge que pour les anciennes versions jusqu’à présent. Ceci est dû à des contraintes de temps et au fait de ne pas avoir le temps de tester la compatibilité. Les choses finiront par se casser lorsque vous utilisez les anciennes versions, et vous pouvez le voir de vous-même dans les forums WordPress. Voici une erreur commune, qui est typiquement causée par une version PHP plus ancienne et comment elle traite une certaine fonction :

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

Vous pouvez faire une recherche dans les forums WordPress pour « unexpected T_Function » et ils renvoient plus de 2.000 discussions, beaucoup avec les résultats de ces deux derniers jours. En voici quelques récentes, toutes dues à l’utilisation d’anciennes versions de PHP :

Beaucoup de ces discussions sont ouvertes parce qu’ils utilisent des versions obsolètes de PHP. Cependant, il en va de même pour les discussions ouvertes en raison de problèmes de compatibilité avec PHP 7. Ce qui montre que la communauté de développement WordPress essaie toujours de rattraper les nouvelles versions de PHP.

4. Nouvelles fonctionnalités pour les développeurs

La plupart des développeurs WordPress préféreraient travailler uniquement sur les nouvelles versions de PHP s’ils le pouvaient, simplement parce qu’il y a eu tant de nouvelles fonctionnalités ajoutées entre PHP 5.2 et PHP 7.4. Quelques changements avec PHP 7 et 7.3 incluent :

Quelques changements avec PHP 7 et 7.3 incluent :

  • Opérateur de comparaison combinée
  • Opérateur de coalescence nulle
  • Nouvel indice de type
  • Cours anonymes
  • Types nullables
  • Déclarations itérables et nulles
  • Gestion des exceptions de prises multiples
  • Clés utilisables dans les listes
  • Plus de décalages négatifs des chaînes de caractères
  • Opérateurs de numéros et numéros mal formés
  • Serveur Push HTTP/2
  • Préchargement
  • Opérateur Spread dans l’expression d’un tableau
  • Fonctions Arrow 2.0 (short closures)
  • Opérateur d’assignation coalescente nulle
  • Propriétés Typées 2.0
  • Références faibles
  • Covariant returns et contravariant parameters
  • Nouveau mécanisme de sérialisation d’objets personnalisé

Ce n’est pas amusant de supporter les anciennes versions de quoi que ce soit. Malheureusement, beaucoup de développeurs doivent supporter un large éventail de versions.

Il y a encore plus de nouvelles fonctionnalités dans PHP 8.0. Voici quelques-unes des plus importantes :

  • Les arguments nommés
  • Les types d’union
  • Promotion des propriétés des constructeurs
  • Sérialisation personnalisée des objets
  • Expression de correspondance
  • Opérateur Nullsafe
  • Améliorations dans le système de type et la gestion des erreurs.

Et juste derrière cela vient PHP 8.1 et PHP 8.2. Les deux incluent de nouvelles fonctionnalités, des dépréciations et des changements.

Assurez-vous que votre hébergeur prend en charge les dernières versions de PHP

Cela a pris un certain temps, mais les exigences officielles de WordPress.org recommandent maintenant un hébergeur exécutant PHP version 7.4 ou supérieure.

Yoast vient de publier un article intitulé « Whipping Your Host Into Shape« . Dans l’article, Joost de Valk explique en détail comment le vrai problème est que les hébergeurs n’adoptent pas cela plus rapidement, et même si c’est le cas, ils n’encouragent pas les utilisateurs à se mettre à jour. Et Yoast va faire quelque chose à ce sujet. A partir de Yoast SEO 4.5, ils vont commencer à afficher un avis sur le tableau de bord WordPress pour les sites fonctionnant en PHP 5.2. Cet avis sera gros, laid et non recevable.

Si nous pouvions donner un high five à Yoast, nous le ferions ! Kinsta a pris en charge les dernières versions de PHP avec chaque version stable.

Mise à jour : PHP 8.2 (version officielle) est maintenant disponible pour tous les clients Kinsta. PHP 7.4 n’est plus supporté par Kinsta. Veuillez noter que nous supportons les versions de PHP 8.0, 8.1, 8.2 et 8.3.

Nous nous engageons à exploiter l’environnement le plus rapide et le plus sécurisé du marché, ce qui signifie que nous devons nous assurer que tous les sites utilisent des technologies qui reçoivent activement les mises à jour de sécurité.

Consultez notre guide détaillé avec des instructions étape par étape sur la façon de mettre à jour PHP en toute sécurité sur votre site WordPress.

Vérifiez votre version actuelle de PHP

Peut-être ne savez-vous pas quelle version de PHP votre site WordPress utilise actuellement. Jetez un coup d’œil aux différentes façons ci-dessous pour le découvrir.

1. Vérifier la version PHP avec Pingdom

Une des façons les plus simples de vérifier quelle version de PHP vous utilisez est d’utiliser un outil comme Pingdom ou Google Chrome Devtools. Le premier en-tête de requête HTTP vous montrera généralement la version.

Vérifier la version PHP dans Pingdom
Vérifier la version PHP dans Pingdom

Ceci repose sur le fait que l’hébergeur ne modifie pas la valeur de l’en-tête X-Powered-By. Certains doivent cacher cela par mesure de sécurité. Si c’est le cas, vous ne verrez peut-être pas votre version PHP, dans ce cas, vous devrez utiliser l’une des autres options ci-dessous. Ou vous pouvez toujours contacter votre hébergeur et lui demander.

2. Vérifier la version PHP dans WordPress

Si vous utilisez WordPress 5.0 ou supérieur, vous pouvez voir la version PHP sous l’outil  » Santé du Site « .

Version PHP dans l’outil Santé du Site de WordPress
Version PHP dans l’outil Santé du Site de WordPress

3. Vérifier la version PHP avec un fichier

Vous pouvez également vérifier votre version PHP en téléchargeant un fichier par FTP sur votre serveur.

Étape 1

Créez un fichier vierge appelé phpinfo.php. Dans le fichier, collez le contenu suivant :

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

Étape 2

Téléchargez le fichier à la racine de votre site WordPress.

Télécharger le fichier phpinfo.php
Télécharger le fichier phpinfo.php

Étape 3

Ensuite, naviguez jusqu’à l’emplacement de votre fichier, domaine.com/phpinfo.php. Vous devriez alors voir votre version actuelle de PHP.

Vérifier la version PHP dans le navigateur
Vérifier la version PHP dans le navigateur

Que devraient faire les utilisateurs moins avides de technologie ou ceux qui n’ont pas de budget ?

Nous réalisons qu’il y a encore des milliers de sites WordPress qui sont incompatibles avec les nouvelles versions de PHP, que ce soit à cause d’une vieille extension ou d’un thème. Le défi est de savoir quelle est la meilleure ligne de conduite à adopter pour les utilisateurs moins avides de technologie ou ceux qui n’ont pas de budget. Nous rencontrons cela tout le temps avec les clients qui migrent vers Kinsta et au fur et à mesure que les versions PHP atteignent leur EOL.

Voici quelques recommandations :

  1. Cela devrait être une évidence, mais mettez toujours à jour vos extensions et thèmes vers la dernière version si vous ne l’avez pas déjà fait.
  2. Contactez le développeur de l’extension ou du thème et demandez-lui d’ajouter/fixer le support de PHP 7.2, 7.3 ou PHP 8.0 (ou la version actuelle que vous essayez de mettre à jour). Nous donnons aux clients un avertissement avant de supprimer les versions PHP afin qu’ils puissent avoir le temps de le faire si nécessaire. C’est particulièrement important pour ceux qui n’ont pas de budget pour simplement embaucher un développeur.
  3. Trouver une extension alternative qui peut fournir la même fonctionnalité et qui est compatible avec la version PHP. Grâce à l’énorme répertoire WordPress et aux milliers d’extensions et de thèmes premium, vous pouvez presque garantir qu’il existe une alternative pour tout.
  4. Pour ceux qui ont les budgets, engagez un développeur WordPress pour résoudre le problème.

Comment mettre à jour PHP

Prêt à mettre à jour ? Super, mais l’une des toutes premières choses à faire est de tester votre site pour s’assurer de sa compatibilité. Vous pouvez tester votre site WordPress localement ou, mieux encore, utiliser un environnement de développement, car cela ressemblera davantage à un site de production en direct. Mieux vaut prévenir que guérir !

Si vous êtes un client Kinsta, vous pouvez facilement créer un environnement de développement en un seul clic. Changez la version de PHP depuis le tableau de bord et commencez à tester.

Créer un site de mise à disposition WordPress
Créer un site de mise à disposition WordPress

Et n’oubliez pas, si vous mettez à jour à partir d’une ancienne version de PHP, assurez-vous que vous mettez également à jour votre installation WordPress. Une nouvelle version de PHP avec une version de 2 ans de WordPress ne se terminera probablement pas bien. Une fois que vous avez testé votre site et que vous êtes prêt à mettre à jour PHP, voici quelques ressources pour vous permettre de vous lever et d’aller vite.

Consultez notre guide détaillé avec des instructions étape par étape sur la façon de mettre à jour PHP en toute sécurité sur votre site WordPress.

Mise à jour de PHP avec Kinsta

Si vous êtes un client de Kinsta, vous pouvez facilement changer la version de PHP en cliquant sur votre site, en allant dans « Outils, » et en sélectionnant un moteur PHP différent. Nous disposons actuellement de PHP 8.0, 8.1, 8.2 et 8.3.

Changer de version de PHP
Changer de version de PHP

Chez Kinsta, notre configuration PHP comprend une fonction de self-healing personnalisée. Cela signifie que le moteur PHP de votre site redémarrera automatiquement s’il tombe en panne. Si le redémarrage automatique de PHP échoue, notre système de surveillance alertera notre équipe d’administrateurs système pour qu’elle examine le problème.

Mettre à jour PHP à partir de cPanel

Si votre hébergeur utilise cPanel, il est fort probable qu’il dispose déjà d’une option pour changer votre version de PHP. Connectez-vous simplement à cPanel et dans la catégorie « Software » cliquez sur « Select PHP Version ».

Sélectionner la version PHP dans cPanel
Sélectionner la version PHP dans cPanel

Vous pouvez ensuite sélectionner les versions de PHP disponibles que votre hébergeur prend en charge.

PHP 7 dans cPanel
PHP 7 dans cPanel

Mise à jour manuelle de PHP sur le serveur

Si vous gérez votre propre serveur, nous vous recommandons de consulter la documentation officielle d’installation de PHP, car les instructions varient selon le système d’exploitation. Vous devrez voir les changements avec les fonctions, les classes, les enveloppes, les extensions, les modules, etc. Voici quelques liens vers des guides de migration :

Résumé

C’est le moment de penser à se mettre à jour vers PHP 8.0, 8.1 ou 8.2 si vous ne l’avez pas déjà fait. Non seulement parce que vous voulez fonctionner sur des logiciels supportés, mais aussi parce que vous êtes assuré de bénéficier d’avantages en terme de performances ! Si votre hébergeur actuel ne supporte pas encore PHP 8.0, 8.1 ou 8.2, nous vous encourageons fortement à chercher un nouvel hébergement. Et de même avec les thèmes et les extensions. Si le développeur n’a pas encore publié un correctif, il est peut-être temps de trouver une alternative.

Avez-vous récemment migré vers PHP 8.0, 8.1 ou 8.2 ? Nous serions ravis d’entendre vos retours ci-dessous. La transition a-t-elle été facile ? Ou peut-être êtes-vous encore bloqué à attendre la réponse d’une tierce partie.

Brian Jackson

Brian a une grande passion pour WordPress, l'utilise depuis plus de dix ans et développe même quelques plugins de qualité. Brian aime les blogs, les films et les randonnées. Connectez avec Brian sur Twitter.