PHP

PHP: Hypertext Preprocessor, plus connu sous son sigle PHP (Personal Home Page), est un langage de programmation libre, principalement utilisé pour produire des pages Web dynamiques via un serveur web.

Un grand nombre de sites web célèbres, comme Facebook et Wikipédia, ont été créés grâce à PHP. Ce langage est considéré comme une des bases de la création de sites web dits dynamiques mais également des applications web.

1. Présentation

🌐 PHP et le Web

PHP, un langage de script souvent utilisé côté serveur, interprète le code PHP des pages web demandées et génère du code (comme HTML, XHTML, CSS) et des données (tels que JPEG, GIF, PNG) que les navigateurs web peuvent interpréter et rendre. Il peut aussi générer d’autres formats comme le WML, le SVG et le PDF.

💻 Développement d’Applications avec PHP

Les développeurs conçoivent PHP pour la création d’applications dynamiques, principalement pour le Web. Il se couple fréquemment à un serveur Apache, bien qu’il puisse s’installer sur la plupart des serveurs HTTP, y compris IIS. Cette association permet à PHP de récupérer des informations d’une base de données, d’un système de fichiers (contenu et structure) ou de données envoyées par le navigateur, pour interprétation ou stockage ultérieur.

📚 Apprentissage et Simplicité de PHP

La faible typification et la souplesse de PHP facilitent son apprentissage par les débutants. Cependant, cette simplicité de PHP peut entraîner rapidement l’apparition de bugs et de failles de sécurité dans les applications. Pragmatique, PHP privilégie les solutions directes, mais l’incohérence de PHP dans le nommage des fonctions et la gestion des arguments peut gêner l’apprentissage.

🔐 Sécurité et Multi-Plateforme

L’utilisation de PHP débute par le traitement des formulaires et s’étend ensuite à l’accès aux bases de données, facilité une fois les modules correspondants installés sur le serveur. La capacité de PHP à résoudre facilement des problèmes autrefois compliqués en fait un élément essentiel des offres d’hébergement.

De plus, PHP est un langage multi-plateforme, fonctionnant aussi bien sous Linux que sous Windows, permettant de transférer le même code dans des environnements similaires, bien qu’il soit nécessaire de considérer les différences dans les structures de répertoires.

Bien que libre, gratuit et simple à utiliser et à installer, PHP exige une compréhension approfondie des problèmes de sécurité qui lui sont associés.

🆕 Nouveautés dans PHP 5.3

La version 5.3 de PHP a introduit de nombreuses nouvelles fonctions, comme les espaces de noms (Namespace) — cruciaux pour développer des extensions, des bibliothèques, et des frameworks structurés —, les fonctions anonymes, les fermetures, et bien d’autres.

🌍 Popularité de PHP

En 2018, PHP, dans ses différentes versions, était le langage utilisé par près de 80 % des sites web.

🤝 Communauté PHP et AFUP

Depuis plusieurs années, l’Association Française des Utilisateurs de PHP (AFUP) organise des rassemblements nationaux où des experts en programmation et du secteur se rencontrent pour discuter autour de PHP et de ses développeurs. L’AFUP organise deux événements majeurs : le « Forum PHP », généralement en fin d’année, et les « AFUP Day », qui se déroulent au premier semestre dans plusieurs villes simultanément.

2. Histoire

Le langage PHP a été créé en 1994 par Rasmus Lerdorf pour son site web. C’était à l’origine une bibliothèque logicielle en C dont il se servait pour conserver une trace des visiteurs qui venaient consulter son CV. Au fur et à mesure qu’il ajoutait de nouvelles fonctionnalités, Rasmus a transformé la bibliothèque en une implémentation capable de communiquer avec des bases de données et de créer des applications dynamiques et simples pour le Web. Rasmus a alors décidé, en 1995, de publier son code, pour que tout le monde puisse l’utiliser et en profiter.

3. Fonctionnement

PHP, membre de la grande famille des langages descendants du C, possède une syntaxe très proche de celle-ci. Sa syntaxe et sa construction ressemblent particulièrement à celles de Java et Perl, avec la différence majeure que le code PHP peut s’intégrer facilement au code HTML dans un fichier PHP.

Pour une utilisation sur Internet, l’exécution du code PHP se passe de la manière suivante : lorsqu’un visiteur demande une page web, son navigateur envoie une requête au serveur HTTP correspondant. Si le serveur identifie la page comme un script PHP (habituellement par son extension .php), il appelle l’interprète PHP.
Cet interprète traite le script et génère le code final de la page, qui est généralement constitué d’HTML ou de XHTML, mais aussi souvent de feuilles de style en cascade (CSS) et de JavaScript (JS). Le serveur HTTP reçoit ce contenu et le renvoie.

Ce schéma explique ce fonctionnement :

Souvent, on ajoute une étape supplémentaire au processus PHP : le dialogue avec la base de données. Classiquement, PHP établit une connexion avec le serveur de SGBD désiré, lui envoie des requêtes, récupère les résultats, puis ferme la connexion.

Bien que son utilisation principale soit comme générateur de pages Web dynamiques, PHP sert également de langage de programmation ou de script en ligne de commande, sans nécessiter de serveur HTTP ni de navigateur. Il offre alors l’accès à de nombreuses fonctions du langage C et à d’autres fonctions, sans exiger de compilation à chaque modification du code source.

PHP dispose d’un grand nombre de fonctions pour opérer sur le système de fichiers, exécuter des commandes dans le terminal, gérer les bases de données, effectuer des fonctions de tri et de hachage, traiter des chaînes de caractères, générer et modifier des images, et utiliser des algorithmes de compression.

Le moteur de Wikipédia, MediaWiki, est écrit en PHP et interagit avec une base MySQL ou PostgreSQL

4. Mascotte

Comme de nombreux projets Open Source, PHP possède une mascotte : l’éléPHPant, créé en 1998 par El Roubio.

El Roubio a trouvé son inspiration dans la ressemblance des lettres PHP avec le mot « éléphant » et du fait que deux des lettres du langage figurent déjà dans ce mot, permettant ainsi la création du néologisme « éléPHPant ». El Roubio distribue toutes ses œuvres sous la licence GNU GPL. Une peluche de l’ÉléPHPant bleu est également disponible.

L’éléPHPant, la mascotte de PHP.

Retour au glossaire