PHP | |
Développeur | The PHP Group |
---|---|
Paradigmes | Programmation impérative orientée objet fonctionnelle |
Typage | Typage dynamique (Le mot dynamique est souvent employé désigner ou qualifier ce qui est relatif au mouvement. Il...) faible |
Influencé par | Perl C/C++ Java |
Système d'exploitation | Multiplate-forme (Un logiciel multiplate-forme ou multiplateforme est un logiciel conçu pour fonctionner sur...) |
Licence | Licence PHP (PHP (sigle de PHP: Hypertext Preprocessor), est un langage de scripts libre principalement...) |
Site Web (Un site Web est un ensemble de pages Web hyperliées entre elles et mises en ligne à une...) | www.php.net |
PHP (sigle de PHP: Hypertext Preprocessor), est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP, mais pouvant également fonctionner comme n'importe quel langage interprété de façon locale, en exécutant les programmes en ligne de commande (Commande : terme utilisé dans de nombreux domaines, généralement il désigne un ordre ou un...). PHP est un langage impératif disposant depuis la version 5 de fonctionnalités de modèle objet complètes. En raison de la richesse de sa bibliothèque, on désigne parfois PHP comme une plate-forme plus qu'un simple langage.
Le langage PHP fut créé en 1994 par Rasmus Lerdorf (Rasmus Lerdorf est né le 22 novembre 1968 à Qeqertarsuaq sur l'ile de Disko au Groenland. Ce...) pour son site Web. C'était à l'origine une bibliothèque logicielle (En informatique, une bibliothèque ou librairie logicielle (ou encore, bibliothèque de...) en Perl dont il se servait pour conserver une trace (TRACE est un télescope spatial de la NASA conçu pour étudier la connexion entre le...) des visiteurs qui venaient consulter son CV. Au fur (Fur est une petite île danoise dans le Limfjord. Fur compte environ 900 hab. . L'île...) et à mesure qu'il ajoutait de nouvelles fonctionnalités, Rasmus a transformé la bibliothèque en une implémentation (Le mot implantation peut avoir plusieurs significations :) en langage C, capable de communiquer avec des bases de données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent...) et de créer des applications dynamiques et simples pour le Web. Rasmus décida alors en 1995 de publier son code, pour que tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou...) le monde (Le mot monde peut désigner :) puisse l'utiliser et en profiter. PHP s'appelait alors PHP/FI (pour Personal Home Page Tools/Form Interpreter). En 1997, deux étudiants, Andi Gutmans et Zeev Suraski, redéveloppèrent le cœur de PHP/FI. Ce travail aboutit un an plus tard à la version 3 de PHP, devenu alors PHP: Hypertext Preprocessor. Peu de temps (Le temps est un concept développé par l'être humain pour appréhender le...) après, Andi Gutmans et Zeev Suraski commencèrent la réécriture du moteur (Un moteur (du latin mōtor : « celui qui remue ») est un dispositif...) interne (En France, ce nom désigne un médecin, un pharmacien ou un chirurgien-dentiste, à la...) de PHP. Ce fut ce nouveau moteur, appelé Zend Engine qui servit de base à la version 4 de PHP
En 2002, PHP est utilisé par plus de 8 millions de sites Web à travers le monde et en 2007 par plus de 20 millions.
Un indicateur paradoxal de la popularité de PHP est le nombre (La notion de nombre en linguistique est traitée à l’article « Nombre...) de failles de sécurité concernant des applications PHP et listées avec un identifiant (En informatique, on appelle identifiants (également appelé parfois en anglais login) les...) CVE sur la National Vulnerability Database, base de données (En informatique, une base de données (Abr. : « BD » ou...) américaine. Ces failles représentent 12% du total ( Total est la qualité de ce qui est complet, sans exception. D'un point de vue comptable, un...) en 2003, 20% en 2004, 28% en 2005, 43% en 2006, 36% en 2007, 38% sur les deux premiers mois (Le mois (Du lat. mensis «mois», et anciennement au plur. «menstrues») est une période de temps...) de 2008. Plus d'un quart des vulnérabilités répertoriées sur cette base concerne des applications PHP, plus d'un tiers ces dernières années, et la plupart peuvent être exploitées à distance. Ces vulnérabilités s'expliquent par de mauvaises habitudes de programmation (La programmation dans le domaine informatique est l'ensemble des activités qui permettent...) (souvent un défaut de validation des entrées) alliées à des caractéristiques douteuses du langage lui-même (par exemple register globals, maintenant déconseillé).
La version actuelle est la version 5, sortie le 13 juillet 2004. Elle utilise Zend Engine 2 et introduit un véritable modèle objet, une gestion des erreurs fondée sur le modèle des exceptions, ainsi que des fonctionnalités de gestion pour les entreprises. PHP 5 apporte beaucoup de nouveautés, telles que le support de SQLite, qui est un système léger de gestion de bases de données embarqué, au détriment de la bibliothèque cliente de MySQL, plus puissante mais qui n'est désormais plus activée par défaut, ainsi que des moyens de manipuler des fichiers et des structures XML basés sur libxml2 :
La dernière mise à jour (Une mise à jour, souvent abrégé en MAJ ou MàJ, est l'action qui consiste à...) est la 5.3.2 datant du 4 mars 2010.
La version 4.4.x n'est plus maintenue depuis le 31 décembre 2007. Seuls les patchs de sécurité critiques ont encore été développés jusqu'à la date du 8 août 2008.
La prochaine version : PHP 6 est en développement.
Code des couleurs | |
---|---|
Rouge (La couleur rouge répond à différentes définitions, selon le système chromatique dont on fait...) | Ancienne version, non supportée |
Vert (Le vert est une couleur complémentaire correspondant à la lumière qui a une longueur d'onde...) | Version actuelle, supportée |
Bleu (Bleu (de l'ancien haut-allemand « blao » = brillant) est une des trois couleurs...) | Version à venir |
Version majeure | Version mineure | Date de sortie | Notes |
---|---|---|---|
1.0 | 1.0.0 | 8 juin 1995 | Appelé officiellement "Personal Home Page Tools (PHP Tools)", outils pour page personnelle. C'est la première apparition du nom "PHP". |
2.0 | 2.0.0 | 12 novembre 1997 | Considéré par son créateur comme le plus simple outil (Un outil est un objet finalisé utilisé par un être vivant dans le but d'augmenter son...) de création de pages web dynamiques. |
3.0 | 3.0.0 | 6 juin 1998 | Passage d'une personne à une équipe de développeurs. Zeev Suraski et Andi Gutmans réécrivent la base de cette version. |
4.0 | 4.0.0 | 22 mai 2000 | Ajoute système d'analyseur syntaxique plus avancé appelé le Zend engine. Ce moteur procède en deux étapes d'analyse puis d'exécution. |
4.1.0 | 10 décembre 2001 | Introduit les superglobals ($_GET , $_POST , $_SESSION , etc.) | |
4.2.0 | 22 avril 2002 | Désactive register_globals par default. Les données en provenance du réseau (Un réseau informatique est un ensemble d'équipements reliés entre eux pour échanger des...) ne sont plus insérées directement dans l'espace de nom global, réduisant ainsi les possibilités de failles de sécurité | |
4.3.0 | 27 décembre 2002 | Introduit le CLI, en addition (L'addition est une opération élémentaire, permettant notamment de décrire la...) au CGI. | |
4.4.0 | 11 juillet 2005 | Ajout du manuel (pages accessibles par la commande man ) pour les scripts phpize and php-config . | |
4.4.8 | 3 janvier 2008 | Correction de bugs et de failles de sécurité. Devait être la dernière correction de PHP 4.4. Mises à jour (Le jour ou la journée est l'intervalle qui sépare le lever du coucher du Soleil ; c'est la...) de sécurité uniquement jusqu'au 8 août 2008 si nécessaire. | |
4.4.9 | 7 août 2008 | Plus de sécurité et résolution de bugs. Dernière version de PHP 4.4. | |
5.0 | 5.0.0 | 13 juillet 2004 | Zend Engine II avec un nouveau modèle objet. |
5.1.0 | 24 novembre 2005 | Amélioration de performances par l'introduction de compiler variables dans un moteur PHP repensé. | |
5.2.0 | 2 novembre 2006 | Activation (Activation peut faire référence à :) par défaut de l'extension «filter». | |
5.2.8 | 8 décembre 2008 | Correction urgente d'un bug | |
5.2.9 | 26 février 2009 | ||
5.2.10 | 18 juin 2009 | ||
5.2.11 | 17 septembre 2009 | ||
5.2.12 | 17 décembre 2009 | ||
5.2.13 | 25 février 2010 | ||
5.2.14 | 22 juillet 2010 | Dernière version de la branche 5.2, hors correction de problèmes concernant la sécurité. | |
5.3.0 | 30 juin 2009 | support des espaces de noms; Late Static Bindings (résolution statique (Le mot statique peut désigner ou qualifier ce qui est relatif à l'absence de mouvement. Il peut...) à la volée), étiquettes de saut (goto limité), fermetures, Native PHP archives (phar), Ramasse-miettes de références cycliques, connexion persistante avec mysqli, sqlite3, Ajoute fileinfo en tant que remplacement de mime_magic pour un meilleur support de MIME, raccourci pour l’opérateur ternaire (?:), fonctions anonymes, nombreuses corrections de bug, ... | |
5.3.1 | 19 novembre 2009 | Correction d'un problème au niveau du téléchargement (En informatique, le téléchargement (en anglais download) est l’opération de transmission...) de fichier ( Un fichier est un endroit où sont rangées des fiches. Cela peut-être un meuble, une pièce, un...) pouvant être utilisé pour effectuer une attaque par déni de service. | |
5.3.2 | 4 mars 2010 | Correction d'un grand nombre de bugs | |
5.3.3 | 22 juillet 2010 | Introduit PHP-FPM | |
6.0 | 6.0.0 | Pas de date fixée | Support de Unicode (Unicode est une norme informatique, développée par le Consortium Unicode, qui vise à...); suppression de l'extension ereg, de register_globals, magic_quotes et safe_mode; Alternative PHP Cache |