PHP
Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

PHP
PHP

Développeur The PHP Group
Paradigmes Programmation impérative
orientée objet (De manière générale, le mot objet (du latin objectum, 1361) désigne une entité définie dans un espace à trois dimensions, qui a une fonction...)
fonctionnelle (En mathématiques, le terme fonctionnelle se réfère à certaines fonctions. Initialement, le terme désignait les fonctions qui en prennent...)
Typage Typage dynamique (Le mot dynamique est souvent employé désigner ou qualifier ce qui est relatif au mouvement. Il peut être employé comme :)
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 plusieurs plates-formes, c’est-à-dire le couple liant ordinateur et système d’exploitation. En anglais on parle...)
Licence Licence PHP (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...)
Site Web (Un site Web est un ensemble de pages Web hyperliées entre elles et mises en ligne à une adresse Web. On dit aussi site Internet par métonymie, le World Wide Web reposant sur Internet.) 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 souhait impératif.). 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.

Historique

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 programmeur danois et canadien a travaillé sur divers projets Unix depuis 1985. Il est principalement connu pour être l'auteur de la première...) pour son site Web. C'était à l'origine une bibliothèque logicielle (En informatique, une bibliothèque ou librairie[1] logicielle (ou encore, bibliothèque de programmes) est un ensemble de fonctions utilitaires, regroupées et mises à disposition afin de pouvoir être utilisées...) 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 champ magnétique à petite échelle du Soleil et...) 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 couvre une superficie de 22 km². Elle est située dans la...) 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 codée, d'une chose, d'une transaction d'affaire, d'un...) 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 l'univers.) 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 changement dans le monde.) 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 qui déplace de la matière en apportant de...) interne (En France, ce nom désigne un médecin, un pharmacien ou un chirurgien-dentiste, à la fois en activité et en formation à l'hôpital ou en cabinet pendant une durée variable selon le "Diplôme...) 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 grammatical ».) 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 informations permettant à une personne de...) CVE sur la National Vulnerability Database, base de données (En informatique, une base de données (Abr. : « BD » ou « BDD ») est un lot d'informations stockées dans un dispositif...) 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 total est le résultat d'une addition, c'est-à-dire une somme. Exemple : "Le total des dettes". En...) 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 arbitraire.) 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 l'écriture des programmes informatiques. C'est une étape importante de la conception de logiciel (voire de matériel, cf....) (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 :

  • une API simple nommée SimpleXML ;
  • une API Document (Dans son acception courante un document est généralement défini comme le support physique d'une information.) Object Model assez complète ;
  • une interface (Une interface est une zone, réelle ou virtuelle qui sépare deux éléments. L’interface désigne ainsi ce que chaque élément a besoin de connaître de l’autre pour pouvoir fonctionner correctement.) XPath utilisant les objets DOM et SimpleXML ;
  • intégration de libxslt pour les transformations XSLT via l'extension XSL ;
  • une bien meilleure gestion des objets par rapport à PHP 4, avec des possibilités qui tendent à se rapprocher de celles de Java.

La dernière mise à jour (Une mise à jour, souvent abrégé en MAJ ou MàJ, est l'action qui consiste à mettre « à jour », ou bien...) 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.

Historique des versions

Code des couleurs
Rouge (La couleur rouge répond à différentes définitions, selon le système chromatique dont on fait usage.) Ancienne version, non supportée
Vert (Le vert est une couleur complémentaire correspondant à la lumière qui a une longueur d'onde comprise entre 490 et 570 nm. L'œil humain possède un récepteur, appelé cône M, dont la bande passante est axée sur cette fréquence....) Version actuelle, supportée
Bleu (Bleu (de l'ancien haut-allemand « blao » = brillant) est une des trois couleurs primaires. Sa longueur d'onde est comprise approximativement entre 446 et 520 nm. Elle varie en luminosité du cyan à une teinte plus sombre...) 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 efficacité naturelle dans l'action. Cette augmentation se traduit par la simplification des...) 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 informations. Par analogie avec un filet (un réseau est un « petit rets »,...) 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 réunion de quantités ou l'adjonction de grandeurs extensives de même nature, comme les longueurs, les aires, ou les volumes. En...) 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 période entre deux nuits, pendant laquelle les rayons du Soleil éclairent le ciel....) 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 être employé comme :) à 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 d’informations — programmes, données, images,...) de fichier ( Un fichier est un endroit où sont rangées des fiches. Cela peut-être un meuble, une pièce, un bâtiment, une base de données informatique. Par exemple : fichier des patients d'un médecin, ...) 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 à donner à tout caractère de n’importe quel système d’écriture un nom et un...); suppression de l'extension ereg, de register_globals, magic_quotes et safe_mode; Alternative PHP Cache
Page générée en 0.183 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique