Accueil Recherche | Plan Technique | Liens | Actualités | Formation | Emploi | Forums | Base
logo CERIG NOTE TECHNIQUE cerig.efpg.inpg.fr 
Vous êtes ici : Accueil > Technique > Internet et le web > Le langage PHP           Révision : 30 juillet 2002
Note précédente Liste des notes     Le langage PHP     Page technique Note suivante
 
Zouhir Bouredji (CERIG / EFPG)
(04 juillet 2002)
 

Le PHP est actuellement le langage de script (côté serveur) le plus utilisé pour la réalisation de sites web dynamiques. Langage très complet, il permet de réaliser la plupart des applications, mais il est principalement employé pour mettre des bases de données en ligne dans les sites web.
 

Introduction

En savoir plus :

Depuis moins d’une dizaine d’année est apparu un nouveau langage informatique destiné à la création et la gestion de sites Web : le PHP. Depuis sa création par Rasmus Lerdorf en 1994, ce langage a connu une grande évolution et a été adopté par la majorité des programmeurs de sites Web. La version actuelle est appelée PHP4, elle a l’avantage d’être supportée par la majorité des prestataires de services Internet.

Ce langage de programmation permet essentiellement de construire des sites Web dynamiques, particulièrement lorsqu’ils sont liés à une base de données. La notion de site Web dynamique diffère en fonction du résultat attendu et de la technologie utilisée :

    les pages du site sont animés ("elles bougent !!"), c’est le navigateur client qui génère l’animation (technologies Javascript, Applet Java, Flash de Macromedia, etc.) ;
  les pages du site sont créées à partir d’informations saisies par l’utilisateur, où issues d’une base de données  c’est alors le serveur Web qui crée les pages (technologies PHP, ASP de Microsoft, JSP de Sun).

(L’utilisation de ces deux types de technologie est possible pour un même site.)

Le langage PHP entre dans cette deuxième catégorie de sites dynamiques, que l'on définira comme sites "interactifs". On distingue deux types d'interactivité :

    l'interactivité "internaute" : ce sont les échanges en temps réel, lorsqu’on consulte des pages, et qu’il y a échange d’informations entre l’internaute et le serveur Web (ex. forums de discussion, foire aux questions, livre d’or, etc.) ;
  l'interactivité "Webmaster" (gestionnaire du site) : ce sont les mises à jour sur le site d’une façon très simple et rapide (ex : presse, catalogue, commerce électronique, etc.).

Le PHP est devenu le langage le plus utilisé pour la construction des sites dynamiques. Des millions de sites s'en servent aujourd’hui (d'après les chiffres de NetCraft, et les statistiques Netcraft Web Server Survey), car il est le plus simple d'emploi.

La plus grande qualité du langage PHP, par rapport aux autres langages de scripts, est qu’il supporte un grand nombre de SGBD (Oracle, SQL server,...), dont le plus utilisé est MySQL, qui est  diffusé gratuitement. Grâce au langage PHP, réaliser un site dynamique interfaçant une base de données est une opération relativement simple.
 

1 - Qu’est-ce que le PHP ?

Le PHP est un langage de programmation simple (un langage de script) que l’on intègre dans du code HTML, et qui est interprété côté serveur. La syntaxe du PHP est un mélange de langage C et de Perl . C’est un langage Open Source, c’est à dire gratuit et libre de droits.

Les principaux atouts du PHP sont :

    la gratuité et la disponibilité du code source (PHP est distribué sous licence GNU GPL) ;
  la simplicité d'écriture de scripts qui sont exécutés directement sur le serveur, avant l’envoi de la page à l’internaute ;
  la possibilité d'inclure le script PHP au sein d'une page HTML ;
    la simplicité d'interfaçage avec des bases de données (de nombreux SGBD sont supportés, mais le plus utilisé avec ce langage est MySQL, un SGBD gratuit disponible sur les plateformes Unix, Linux, et Windows ;  
    la richesse fonctionnelle : PHP comporte plus de 1000 fonctions, parmi lesquelles les fonctions d’images, les protocoles Internet, etc.  

 
2 - Historique

On doit la première version de PHP à Rasmus Lerdorf qui l'a mise au point pour ses propres besoins en 1994. Cette version était destinée à son usage personnel, d'où le nom (Personal Home Pages). Cette version n'a pas été mise à disposition du public. Vers 1995, une version qui permettait l'exécution de quelques macros fut mise à disposition (gérer un livre d'or, un compteur de hits et quelques autres choses).

En 1998, grâce à la collaboration de Zeev Suraski et Andy Gutmans, fondateurs de la société Zend, la version 3 voit le jour. Elle s’appelle désormais PHP : "Hypertext Preprocessor". La version 4 voit le jour en 2000.

L’attribut de langage Open source de ce programme a permis à plusieurs milliers de développeurs de rendre PHP plus simple et plus convivial.
 

3 - Comment fonctionne PHP ?

La consultation d’une adresse de site (URL) depuis un navigateur (client), permet au serveur de renvoyer une page. Lorsqu’il s’agit d’une page HTML, elle est renvoyée telle qu’elle a été écrite, mais l’appel d’une page PHP se passe différemment, car les scripts PHP sont exécutés directement sur le serveur, et la page renvoyée est en code HTML (voir exemple au dessous). La figure ci-dessous illustre ce mode de fonctionnement.

Principe de fonctionnement des pages PHP

Les requêtes clients se font à partir de fichiers HTML ou PHP (extension .php, .php3, .php4), et le serveur renvoie des pages HTML. Le langage est avant tout un langage de script (scripting). Le code inséré dans les pages HTML, est alors expédié par le serveur. Son fonctionnement est différent de celui de JavaScript, où les scripts sont exécutés par le navigateur (donc côté client), mais il est identique à celui de la technologie ASP de Microsoft.
 

4 - Syntaxe

Pour que le serveur Web interprète le script PHP, les lignes de code PHP doivent être délimités par les expressions : < ? et ?> ou < php? et ?>. Exemples :

< ?
...
script php
...
?>
    ou    
<php ?
...
script php
...
?>

Les lignes comprises entre les délimiteurs (donc les instructions) doivent être terminées par le point-virgule ";".
 

5 - Exemple de page contenant du PHP

Nous voulons afficher une page Web affichant le mot "bonjour". Nous attribuons à la page le nom "bonjour.php" (l’appel d’une page contenant du script PHP doit nécessairement avoir pour extension ".php" au lieu de ".htm"). Son contenu est le suivant (le code PHP, incorporé dans le code HTML, est écrit en rouge) :

<HTML>

<HEAD>
<TITLE>Essai PHP</TITLE>
</HEAD>

</BODY>
  <?
  echo "<FONT SIZE =8>";
  echo "Bonjour";
  echo "<BR>";
  ?>
</BODY>

</HTML>

Commentaires :

    chaque ligne du bloc PHP doit se terminer par un point-virgule ;
  le terme echo veut dire afficher à l’écran ; (<BR> afficher un retour à la ligne).

La figure ci-dessous montre ce que l'on obtient en affichant "bonjour.php" dans la fenêtre d'un navigateur :

Bonjour !

Si nous éditons le code source correspondant, nous remarquons que l’internaute ne voit pas de code PHP, mais uniquement du code HTML, comme le montre la figure ci-dessous.

Code page

 
6 - PHP et les moteurs de recherche

Le grand inconvénient, actuellement, des sites construits complètement en PHP est le référencement des pages. Très peu de moteurs de recherche indexent un contenu au format PHP (ex. Google). Cependant, il existe plusieurs façons de contourner ce problème :

    soit en réalisant un site semi dynamique (dédoublement des pages), solution très lourde à mettre en place et à maintenir&nsp;;
  soit en utilisant des techniques d’ URL rewriting, c’est à dire un paramétrage du serveur qui permet de transcrire les URL dynamiques, contenant les caractères "?" et "&", en URL statiques ne les contenant pas.

 
7 - Conclusion

L’essor du PHP est très lié à son interfaçage avec la base de données MySQL (qui fera prochainement l’objet d’une note technique), qui permet de construire des sites Web de plus en plus complexes.

L’engouement pour ce langage a vu naître des associations, des organisations et des conférences internationales pour permettre son développement.

Il existe un programme complet gratuit EasyPHP (version 1.6) sous Windows, qui permet de créer et tester la création de sites à l’aide du langage PHP. Ce programme (qui regroupe un serveur Apache, une base de donnée MySQL, et le langage PHP) permet l’installation et la réalisation de sites dynamiques autour du langage PHP.

Note précédente Liste des notes Page technique  Note suivante 
 
Accueil | Technique | Liens | Actualités | Formation | Emploi | Forums | Base
 
Copyright © CERIG/EFPG 1996-2002
Mise en page : J.C. Sohm