Technos

De la sueur, des larmes et de la parse error : le langage PHP a 28 ans

# En partenariat avec JetBrains

28 ans plus tard — Le langage de programmation PHP a soufflé ce mois-ci sa 28ème bougie.

Souvent Parfois cible de moqueries dans la communauté des développeurs de par la réputation qui lui colle à la peau depuis ses débuts, PHP a beaucoup évolué au fil des années et se positionne comme l’un des langages les plus utilisés à ce jour.

Retour sur la grande histoire de PHP.

Un temps que les moins de 20 ans ne peuvent pas connaître

À l'origine, ce projet sans prétention portait le nom de "Personal Home Page Tools", et se présentait comme un jeu de binaires CGI écrits en langage C qui lui permettait de conserver une trace des visiteurs qui consultaient son CV en ligne.



C’est en 1995 que PHP voit le jour (ça ne nous rajeunit pas), après de premiers développements l’année précédente. Son créateur Rasmus Lerdorf, un développeur web d'origine danoise, vient alors de créer un ensemble de scripts pour gérer son site personnel.

Rasmus Lerdorf, le créateur de PHP

Au fil des différentes améliorations portées à son outil, Lerdorf est parvenu à en faire une implémentation capable de communiquer avec des bases de données et de créer des applications web dynamiques.

En partageant son code, il attire l’attention d’une communauté grandissante de développeurs, dans un contexte où le développement web était encore très récent.

Ceux-ci ont alors commencé à contribuer au projet en ajoutant de nouvelles fonctionnalités et en corrigeant les bugs. L'objectif principal était de construire un langage de script côté serveur qui soit à la fois simple et efficace pour la création d’applications web.

Similaire à celle du Perl, la syntaxe du langage était plus limitée, plus simple, mais aussi assez incohérente — l’embarquement du code devait notamment passer par des commentaires HTML.

Après avoir repris le code à zéro à deux reprises, PHP 2.0 sort en novembre 1997. Celui-ci incluait des fonctionnalités telles que la prise en charge des formulaires HTML, la création de cookies et l'accès aux bases de données.

L'IDE PHP ultime : téléchargez PhpStorm maintenant

C'est les émotions

C’est en juin 1998, alors que la France est sur le point de vivre sa première étoile sur le maillot, que les choses sérieuses commencent pour PHP.



La version 3.0 du langage voit le jour après une (nouvelle) grosse réécriture, et celle-ci est la première version de PHP tel que nous le connaissons actuellement. C’est aussi là qu’il voit son nom définitif prendre forme, "PHP" devenant ce que l’on appelle un acronyme récursif (c’est beau) : "PHP: Hypertext Preprocessor".

PHP 3.0 offre des bases plus solides pour la gestion de plusieurs bases de données, des protocoles et des API, et sa facilité d’extension permit à plusieurs développeurs du projet de mettre au point de nombreux modules.

Le langage introduit également (timidement) le support de la programmation orientée objet, un vrai plus qui a contribué à une augmentation de son adoption.

C’est également en 98 que le français (cocorico !) Vincent Pontier crée le logo elePHPant que l’on connaît bien, qui est depuis devenu la mascotte incontournable du langage.

On retiendra parmi les contributeurs les plus actifs du projet les noms d’Andi Gutmans et de Zeev Suraski, qui ont initié plusieurs réécritures pour les premières versions du langage.

Ces deux développeurs sont par ailleurs les fondateurs de la société Zend, qui a grandement amélioré le moteur de script de PHP 4 (Zend Engine) en 2000.

Zend a joué un rôle majeur dans l’histoire de PHP — et c’est toujours le cas — en prenant part dans son développement, mais aussi en proposant des outils et services autour du langage.

Ce moteur permet à PHP de bénéficier de meilleures performances et d’une fiabilité renforcée. PHP 4 introduit des fonctionnalités comme les classes et les objets, le support pour les sessions et l’extension MySQL, qui a facilité l’usage de bases de données.



C’est à ce moment-là que PHP connaît un essor fulgurant dans son utilisation.

Au début des années 2000, les CMS entrent dans la place et s’appuient sur PHP : la première version de Drupal voit le jour en 2001, WordPress le suit en 2003.

Ce dernier ferait tourner à ce jour plus de 40% des sites web dans le monde (coucou 👋).

Le langage de programmation PHP permet d’ouvrir un nouveau champ d’action pour les sites web, et d’étoffer leurs fonctionnalités. Les formulaires interactifs permettent l’apparition des systèmes de commentaires, des formulaires de contact, ou encore des paniers d’achat sur les sites de e-commerce.

Les évolutions et améliorations du langage ont suivi dans les versions suivantes, à l’exception du cas particulier de PHP 6, abandonné et archivé à cause de difficultés et de retards importants.

La dernière version majeure en date, PHP 8 (sortie en 2020), fut très bien accueillie par la communauté des développeurs.

Découvrez PhpStorm, l'IDE PHP intelligent et ultra rapide

Celle-ci a apporté des améliorations significatives en termes de performances grâce à l’introduction du compilateur JIT (Just-in-Time), ce qui profita à certaines applications qui ont pu bénéficier d’une augmentation significative de leur vitesse d’exécution.

Alors que des améliorations de syntaxe ont permis de rendre le code plus concis et expressif, une meilleure gestion des erreurs accompagne également cette nouvelle version.

Mais pourquoi sont-ils aussi méchants ?

PHP est souvent considéré comme le langage le plus détesté des développeurs.

Mais… pourquoi ?

Pour plusieurs raisons, dirons-nous.

La première vient de l’histoire-même de PHP et de ses premières versions, qui ont fait que de nombreux développeurs ont perdu confiance envers le langage, que ce soit pour ses nombreuses réécritures majeures (ou l’abandon de PHP 6), qui ont pu donner l’impression d’une techno à l’évolution chaotique et d’un langage techniquement inconsistant.

On entend par-ci, par-là, des devs critiquer sa syntaxe, son manque de typage fort et son imprévisibilité dans les retours de fonction et les opérateurs. Paradoxalement, ces éléments ont pourtant constitué une certaine force de PHP, en le rendant plus accessible car moins exigeant que d’autres langages de programmation.



L’accessibilité, parlons-en, car c’est peut-être aussi la popularité du langage et son utilisation généralisée (nombreux sites web, projets legacy importants) qui ont mené à cette aversion chez certains développeurs.

Un autre point de friction réside dans les problèmes de sécurité associés à PHP. En raison de son naturel flexible, il peut être facile de produire du code non sécurisé. Néanmoins il est important de noter que si les bonnes pratiques sont suivies, le langage n’est pas intrasèquement une menace pour la sécurité.

Enfin, comme c’est le cas pour d’autres, PHP s’est doté au fil des années d’une image de vieux langage : on ne compte plus les fois où son déclin, voire sa mort imminente ont été annoncés — ce 28ème anniversaire l’écarte par ailleurs définitivement du regrettable "club des 27".

Une perception renforcée par les délais relativement longs entre chaque version majeure, et un sentiment de décalage par rapport aux dernières tendances technologiques et de développement.

Les évolutions de PHP, notamment avec PHP 7, ont apporté des améliorations significatives en termes de performance, de typage fort et d’outils de développement, mais la réputation négative du langage persiste dans certains recoins de la sphère dev (dont certains se rêvent élitistes), en partie en raison d’un manque de connaissance actualisée sur la techno.



Indéniablement, PHP continue de jouer un rôle majeur dans le développement web — on le retrouve d’ailleurs derrière des services comme Facebook, Slack ou Wikipédia — et sa popularité ne faiblit pas.

L’IDE PhpStorm pour booster la productivité des devs PHP

Pour les développeuses et les développeurs qui travaillent avec PHP, il existe en dehors des simples éditeurs de texte code des outils puissants qui facilitent le processus de développement et améliorent la productivité.

L’IDE PhpStorm développé par JetBrains en fait partie et a su s’imposer comme l’un des outils de développement PHP les plus complets et appréciés de la communauté.

Celui-ci propose un éditeur de code intelligent avec une autocomplétion poussée, une navigation aisée dans le code et les projets, ainsi que des fonctionnalités de refactoring avancées.

Ses features permettent aux développeurs d’écrire du code de manière plus rapide et efficace, tout en réduisant les erreurs et en limitant les bugs potentiels.

En complément de son éditeur de code, PhpStorm offre une intégration transparente avec les frameworks populaires du langage, comme Laravel, Symfony ou CakePHP.

L’IDE fournit des fonctionnalités spécifiques à ces frameworks, telles que la génération automatique de code, la gestion des dépendances et la détection des erreurs courantes.

Les technos front-end comme HTML5, CSS, Sass, JavaScript, CoffeeScript et TypeScript sont également supportées dans par PhpStorm, tout comme les bases de données et le SQL.

Son débugueur intégré permet aux développeurs de débuguer leur code PHP pas à pas, et d’examiner les valeurs de leurs variables afin d’identifier rapidement les problèmes potentiels.

PhpStorm facilite également les intégrations avec les systèmes de versioning les plus courants du marché comme Git, SVN et Mercurial. Les développeurs peuvent ainsi gérer leurs branches, effectuer leurs commits, fusionner des modifications et résoudre des conflits directement depuis l’IDE, de quoi simplifier le flux de travail et la collaboration.

Parmi les nouveautés de la dernière version du produit : une amélioration des performances de la solution, la mise à jour de l’interface utilisateur, et l’intégration du service 3v4l.org, qui permet de tester son code PHP sur toutes les versions du langage, y compris celles qui ne sont pas encore publiées.

L’IDE PhpStorm est disponible gratuitement en version d’essai 30 jours

Pour plus de détails sur l’évolution du langage PHP, je vous invite à consulter cette super infographie réalisée par JetBrains lorsque le langage avait célébré ses 25 ans.

À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.