TECHNOLOGIES

PHP, le langage qui fait tourner 77 % du web

PHP (PHP Hypertext Preprocessor) est un langage de programmation open source né en 1994. Aujourd'hui, c'est le langage serveur le plus utilisé au monde pour le développement web.

Derrière sa réputation d'accessibilité se cache un outil professionnel moderne : typage fort, programmation orientée objet, écosystème d'outils qualité. PHP 8 n'a plus rien à envier aux autres langages.

PHP

PRÉSENTATION

Qu'est-ce que PHP ?

PHP est un langage de programmation open source principalement utilisé dans le développement web. Il peut être utilisé pour automatiser de simples scripts, créer des pages dynamiques ou réaliser des applications à très fort trafic.

Contrairement à ce que sa réputation d'origine pourrait laisser croire, PHP moderne est un langage professionnel intégrant la programmation orientée objet, un typage fort depuis PHP 7, et un écosystème d'outils qualité (Composer, PHPStan, PHPUnit, PHP CS Fixer) comparable aux langages les plus stricts.

Depuis PHP 7 (2015) puis PHP 8 (2020), le langage a fait un bond spectaculaire en termes de performances (jusqu'à 3× plus rapide que PHP 5) et de fonctionnalités modernes. PHP est aujourd'hui un langage à part entière, loin des scripts rudimentaires de ses débuts.

ORIGINES

De 1994 à aujourd'hui

Créé en 1994 par Rasmus Lerdorf pour ses besoins personnels, PHP a été réécrit quelques années plus tard par Andi Gutmans et Zeev Suraski, donnant naissance au Zend Engine.

Le langage a connu une ascension fulgurante dans les années 2000 grâce à l'essor du web et à sa facilité de déploiement sur n'importe quel hébergeur mutualisé.

Avec l'arrivée de Composer (le gestionnaire de dépendances) et de Packagist, PHP a acquis la maturité nécessaire pour s'imposer dans des projets d'entreprise complexes. Les frameworks comme Symfony et Laravel ont achevé sa transformation en outil professionnel.

ADOPTION

PHP est partout dans le web

PHP propulse près de 77 % des sites web dans le monde selon W3Techs →une domination stable depuis plus de 20 ans, bien au-delà de tous ses concurrents réunis.

77 % des sites web dans le monde

Selon W3Techs, PHP est utilisé par 77 % des sites dont le langage serveur est identifié →soit 7 fois plus que son premier concurrent. Une domination stable depuis plus de 20 ans malgré l'essor de Node.js, Python et Ruby.

Top 10 des langages sur GitHub

PHP figure régulièrement dans les 10 langages les plus utilisés sur GitHub. Des millions de projets open source des CMS aux frameworks en passant par les outils d'automatisation sont développés et maintenus en PHP chaque jour.

WordPress propulse 43 % du web

WordPress, développé en PHP, est utilisé par plus de 43 % de l'ensemble des sites web dans le monde. Ajoutez Drupal, Joomla, TYPO3 et PrestaShop : la quasi-totalité des CMS et plateformes e-commerce leaders du marché reposent sur PHP.

Au-delà des CMS et des plateformes grand public, PHP est aussi le choix de milliers d'entreprises pour leurs logiciels métier sur mesure. Sa maturité, ses performances et sa capacité d'intégration avec n'importe quelle base de données ou API en font un socle fiable pour des outils internes, des backoffices et des automatisations métier sur le long terme. C'est précisément pourquoi SmartBooster développe l'intégralité de ses projets backends en PHP avec le framework Symfony.

ÉCOSYSTÈME

Les grands frameworks PHP

PHP doit une grande partie de sa professionnalisation à ses frameworks. Chacun répond à un besoin différent, du prototype rapide à l'application d'entreprise complexe.

  • Symfony

    Symfony - Depuis 2005

    Créé par SensioLabs en France, Symfony est le framework de référence pour les applications d'entreprise. Modulaire, rigoureusement testé et soutenu par un cycle LTS strict, c'est le choix de SmartBooster pour tous ses projets. Il est également à la base de Laravel.

  • Laravel

    Laravel - Depuis 2011

    Le framework PHP le plus populaire aujourd'hui, apprécié pour son élégance et sa productivité. Construit sur des composants Symfony, Laravel offre un écosystème riche (Eloquent ORM, Livewire, Filament) très prisé pour le développement rapide d'applications web.

  • CodeIgniter

    CodeIgniter - Depuis 2006

    Framework léger et simple à prendre en main, CodeIgniter a été l'un des premiers à populariser le développement PHP structuré. Il reste utilisé pour les projets nécessitant une empreinte minimale ou une intégration dans des environnements d'hébergement contraints.

  • Laminas (Zend Framework)

    Zend Framework → Laminas - Depuis 2005

    Lancé par Zend Technologies en 2005, ce framework enterprise a posé les bases des standards PHP modernes. Renommé Laminas Project depuis 2019 sous l'égide de la Linux Foundation, il continue d'évoluer en open source pour les projets à haute exigence d'architecture.

PERFORMANCE

PHP 8 : un moteur haute performance

PHP 8 a introduit le compilateur JIT (Just-In-Time) qui transforme le bytecode PHP en code machine natif à l'exécution. Sur les traitements intensifs (calculs, génération de rapports, transformations de données volumineuses) les gains sont sensibles par rapport à PHP 5.

Combiné à OPcache (pré-compilation du bytecode) et au preloading PHP 7.4 (chargement du code applicatif au démarrage du worker PHP-FPM), PHP offre des temps de réponse comparables aux autres langages compilés sur des applications web standards.

Gains de performance par saut de version

Saut de version Gain typique Explication
PHP 5.6 → 7.0 +70 à +100 % req/s Le saut le plus significatif de l'histoire de PHP. Zend Engine 3 réduit le temps CPU de 44 à 48 % et la consommation mémoire de 37 à 48 % sur des applications réelles. Un serveur existant peut servir deux fois plus de requêtes sans changement d'infrastructure.
PHP 7.0 → 7.4 +15 à +25 % req/s Progression régulière sur toute la branche 7.x grâce aux optimisations du moteur, des structures internes et de la gestion des chaînes. Le preloading OPcache (7.4) réduit significativement le temps de bootstrap sur les applications volumineuses.
PHP 7.4 → 8.0 +5 à +15 % (web standard)
+20 à +50 % (calcul intensif)
L'introduction du JIT bénéficie surtout au code de calcul pur (algorithmes, transformations de données). Pour les applications web classiques type CMS ou backoffice, les gains restent modestes car le goulot d'étranglement est souvent la base de données, pas le CPU.
PHP 8.0 → 8.3 +3 à +8 % req/s Micro-optimisations progressives à chaque version mineure. Sur WordPress par exemple, le gain de 7.4 à 8.3 est d'environ 5 % en req/s (139 → 146 req/s en conditions réelles). L'intérêt de migrer sur cette période est avant tout la sécurité, pas la performance.
PHP 8.3 → 8.5 Marginal Les benchmarks Kinsta sur WordPress montrent un écart inférieur à 1 % entre 8.3, 8.4 et 8.5 (148,22 vs 148,30 req/s). Les gains de ces versions sont fonctionnels (Pipe, URI, property hooks), pas mesurables en performance brute.

Les gains indiqués sont des ordres de grandeur issus de benchmarks synthétiques et de mesures en conditions réelles. Ils varient selon la nature du code, la configuration serveur (OPcache, PHP-FPM, nombre de workers) et l'infrastructure sous-jacente. Ces chiffres ne se substituent pas à un profiling sur votre propre application. Sources : Journal du Net : PHP 7 benchmark, Kinsta : PHP benchmarks (8.2–8.5), phpbenchmarks.com.

HISTORIQUE

Versions de PHP

PHP publie une nouvelle version mineure chaque année en novembre. Chaque version bénéficie de 2 ans de support actif puis 1 an de correctifs de sécurité. Voir les versions supportées officiellement →

  • PHP 8.5

    Recommandée

    Nov. 2025

    Dernière version stable. Support actif jusqu'en déc. 2027, correctifs de sécurité jusqu'en déc. 2029.

    • Extension URI
      Parsing natif des URLs selon RFC 3986 et WHATWG URL →plus besoin de parse_url() et ses incohérences. Normalisation, comparaison et manipulation d'URI en objet.
    • Opérateur Pipe (|>)
      Chaîne les appels de fonctions sans variables intermédiaires : $slug = $title |> trim(...) |> strtolower(...). Lisibilité améliorée sur les pipelines de transformation.
    • Clone with
      Clonage d'objet avec modification de propriétés en une expression : clone($this, ['status' => 'active']). Simplifie les objets valeur immutables.
    • array_first() / array_last()
      Fonctions natives pour récupérer le premier ou le dernier élément d'un tableau — évite les idiomes reset()/end() ou array_slice().
    • #[\NoDiscard]
      Attribut qui avertit si la valeur de retour d'une fonction n'est pas utilisée →utile pour les méthodes dont ignorer le retour serait un bug silencieux.
  • PHP 8.4

    Support actif déc. 2026

    Nov. 2024

    Dernière version majeure en date. Support actif jusqu'en déc. 2026, correctifs de sécurité jusqu'en déc. 2027.

    • Property hooks
      Logique get/set directement dans la déclaration de propriété →plus besoin de getter/setter séparés pour les cas simples.
    • Asymmetric visibility
      public private(set) : une propriété lisible publiquement mais modifiable uniquement en interne →immutabilité contrôlée sans readonly total.
    • array_find()
      Nouvelle fonction native pour trouver le premier élément correspondant à un callback →évite les array_filter() + reset() idiomatiques.
    • Lazy objects
      Objets instanciés à la demande, nativement dans le moteur PHP. Symfony 7 et d'autres frameworks en tirent profit pour des services vraiment paresseux.
  • PHP 8.3

    Support sécurité déc. 2027

    Nov. 2023

    Support actif terminé en déc. 2025. Correctifs de sécurité jusqu'en déc. 2027.

    • Typed class constants
      Les constantes de classe peuvent désormais être déclarées avec un type explicite (int, string, array…) →plus de constante implicitement typée string.
    • json_validate()
      Valide un JSON sans le décoder →utile pour vérifier la structure d'un payload entrant sans consommer de mémoire inutile.
    • #[Override]
      L'attribut signale qu'une méthode redéfinit une méthode parente →PHP lève une erreur si ce n'est pas le cas.
  • PHP 8.2

    Support sécurité déc. 2026

    Déc. 2022

    Support actif terminé en déc. 2024. La migration vers 8.4 ou 8.5 est recommandée.

    • Readonly classes
      Le mot-clé readonly s'applique à la classe entière →toutes les propriétés deviennent readonly sans les déclarer individuellement.
    • DNF types
      Disjunctive Normal Form : types composés comme (A&B)|null pour exprimer des contraintes de type complexes.
    • true / false / null standalone
      Ces valeurs peuvent être utilisées comme types de retour autonomes plutôt que via bool|null.
  • PHP 8.1

    Obsolète depuis déc. 2024

    Nov. 2021

    En fin de support depuis décembre 2024. Les projets sur PHP 8.1 doivent migrer dès que possible.

    • Enums
      Types énumérés natifs (backed ou pure) →fini les constantes de classe pour représenter des états finis.
    • Fibers
      Primitives de concurrence légère : exécution interruptible et reprise, base des frameworks asynchrones PHP modernes (ReactPHP, Swoole, Symfony Messenger).
    • Readonly properties
      Propriétés assignables une seule fois, vérifiées par le moteur →les objets valeur deviennent triviaux à écrire.
    • Intersection types
      Type A&B : une valeur doit satisfaire plusieurs interfaces simultanément.
  • PHP 8.0

    Obsolète depuis nov. 2023

    Nov. 2020

    Version majeure marquée par le JIT et la refonte de la gestion des erreurs. Fin de support en novembre 2023.

    • JIT (Just-In-Time compiler)
      Compilation à la volée : gain notable sur les calculs intensifs (jusqu'à ×3 sur certains benchmarks).
    • Union types
      int|string|null : les fonctions expriment des signatures multi-types nativement, sans PHPDoc.
    • Match expression
      Alternative au switch avec retour de valeur, comparaison stricte et erreur si aucun bras ne correspond.
    • Named arguments
      Passage des arguments par nom plutôt que par position →lisibilité des appels à fonctions à nombreux paramètres.
    • Nullsafe operator (?->)
      Chaîne d'accès sans vérification null à chaque étape →code réduit de 30 à 50 %.
  • PHP 7.4

    Obsolète depuis nov. 2022

    Nov. 2019

    Dernière branche 7.x. Fin de support en novembre 2022.

    • Typed properties
      Déclaration de type directement sur les propriétés de classe, enforced par le moteur.
    • Arrow functions
      Syntaxe fn() => expr pour les fonctions courtes qui capturent automatiquement les variables du scope parent.
    • Preloading (OPcache)
      Pré-chargement du code applicatif au démarrage du worker PHP-FPM pour des temps de réponse réduits.
  • PHP 7.0

    Obsolète depuis déc. 2018

    Déc. 2015

    Refonte majeure avec le moteur Zend Engine 3 : jusqu'à 2× plus rapide que PHP 5.6, 2× moins de mémoire consommée. Marque la rupture avec l'ère PHP 5.

    • Scalar type declarations
      Typage strict des paramètres (int, float, string, bool) et des types de retour →le premier grand pas vers un PHP typé.
    • Null coalescing operator (??)
      $a ?? $b pour remplacer le triple isset/ternaire →standard dans tout code PHP moderne.
    • Zend Engine 3 → ×2 perf
      Réécriture complète du moteur : 2 fois moins de mémoire, 2 fois plus rapide que PHP 5.6 sur des benchmarks réels.
  • PHP 5.6

    Obsolète depuis déc. 2018

    Août 2014

    Dernière version de la branche PHP 5, porte d'entrée recommandée vers PHP 7. Introduction des fonctions variadiques (...$args) et de l'opérateur d'exponentiation (**). Plus aucun correctif de sécurité depuis décembre 2018.

  • PHP 5.5

    Obsolète

    Juin 2013

    Introduction des générateurs (yield) et du bloc finally. Première version avec password_hash() natif pour le hachage sécurisé des mots de passe.

  • PHP 5.4

    Obsolète

    Mars 2012

    Introduction des traits pour la réutilisabilité de code, syntaxe courte des tableaux ([ ]), serveur web de développement intégré. Suppression de register_globals et magic_quotes.

  • PHP 5

    Obsolète

    2004

    Introduction du Zend Engine 2, refonte complète de la POO (interfaces, classes abstraites, exceptions, SPL). Naissance de PDO pour l'accès aux bases de données. Versions majeures : 5.0 → 5.6 sur dix ans.

  • PHP 4

    Obsolète

    2000

    Première version avec le Zend Engine 1.0. Introduction des sessions, du buffering de sortie et d'une meilleure gestion des objets. PHP 4 a propulsé l'explosion du web dynamique dans les années 2000.

  • PHP 3

    Obsolète

    1997

    Réécriture complète par Andi Gutmans et Zeev Suraski (futurs fondateurs de Zend Technologies). C'est PHP 3 qui a donné son nom au langage tel qu'on le connaît : PHP Hypertext Preprocessor. Base de la popularisation du web dynamique.

Rester sur une version active de PHP, c'est bénéficier des correctifs de sécurité, des gains de performance et des nouvelles fonctionnalités du langage. Une version obsolète expose votre application à des vulnérabilités non corrigées, complique le recrutement et bloque les mises à jour de vos frameworks (Symfony 7 requiert PHP 8.2 minimum).

NOTRE USAGE

PHP chez SmartBooster

Nous développons l'intégralité de nos backends en PHP avec le framework Symfony. Notre stack qualité : PHPStan pour l'analyse statique, PHPUnit pour les tests, PHP CS Fixer pour le formatage →garantit que le code livré est robuste, lisible et maintenable sur le long terme.

Pour le développement PHP au quotidien, nous recommandons l'IDE PHPStorm : le meilleur environnement pour PHP et Symfony, avec une intégration native de tous nos outils qualité.

Tous nos environnements de développement et de tests tournent sous Docker, ce qui nous permet de changer de version PHP en une commande et de garantir une stricte équivalence entre nos postes de développement et la production.

« Nous collaborons avec l'équipe Smartbooster depuis 3 ans sur un projet stratégique pour notre activité.

Nous avons largement dépassé la relation « client/prestataire », l'équipe Smartbooster nous accompagne au quotidien dans le développement de nos outils digitaux.

Une équipe experte, réactive et à l'écoute… Je recommande évidemment ! »

Raphael Muller
Raphael Muller
Directeur Marketing - La Maison Saint-Gobain

« Notre collaboration avec Nicolas, sur un projet à la fois managérial et technique, a été une vraie réussite.

Nicolas a su comprendre nos problématiques, définir des objectifs atteignables et mettre en place une organisation cohérente et efficace au sein de notre "petite" équipe (de 6 personnes).

Je recommande Nicolas pour son écoute, son professionnalisme et ses compétences à la fois techniques et humaines.

Il est rare (et je le dis très sincèrement après 3 ans d'entrepreneuriat dans le digital) de rencontrer un profil de consultant en informatique aussi complet. »

Thomas Raquin
Thomas Raquin
Co-fondateur chez CONITY

Pour aller plus loin

Approfondir votre réflexion

Développement logiciel sur mesure

PHP et Symfony au service de votre projet métier de la conception à la livraison, avec une équipe dédiée et une méthodologie éprouvée.

Reprise et refonte de logiciel

Vous avez un projet PHP existant à reprendre, moderniser ou faire évoluer ? Nous analysons l'existant et proposons une stratégie adaptée.

Maintenance et TMA

Montées de version PHP, correctifs de sécurité, évolutions fonctionnelles →la TMA garantit que votre application reste à jour et opérationnelle.

FAQ

Les réponses à vos questions

Et si vous ne trouvez pas ce que vous cherchez, nous serons ravis de vous répondre en direct lors d'un rendez-vous entre humains !

PHP est le langage de programmation : l'outil de base. Symfony est un framework PHP, c'est-à-dire un ensemble de bibliothèques et de conventions qui structurent le développement d'applications web en PHP. Écrire du PHP sans framework est possible pour des scripts simples, mais sur un projet d'entreprise, Symfony apporte la structure, la sécurité, les outils de test et le cycle LTS qui garantissent la maintenabilité sur le long terme. C'est la même relation qu'entre JavaScript et Vue.js ou React.

PHP est conçu nativement pour le web. Chaque requête HTTP démarre un processus isolé, ce qui simplifie la gestion de la mémoire et des erreurs sans configuration particulière. Node.js est pertinent pour les applications temps réel (WebSocket, streaming), mais son modèle asynchrone complexifie le code sur les applications de gestion classiques. Java est robuste pour les très grosses infrastructures mais son écosystème est plus lourd à maintenir et le recrutement plus difficile et coûteux sur le marché français. PHP 8 avec Symfony offre un équilibre optimal pour les applications métier : performances suffisantes, coût de développement maîtrisé, large vivier de développeurs, et écosystème open source très actif.

Vous avez un projet ?

Contactez-nous pour savoir comment nous pouvons vous aider.