Principes de PHP

PHP est un langage de script (donc pas compilé) généralement exécuté côté serveur pour construire des pages web dynamiques et interactives.

Le schéma ci-dessous illustre l’utilisation typique du langage PHP :

principes php
  1. Le navigateur demande la ressource index.php via son URL (Unified Resource Locator).

    Une requête HTTP (ici de type GET) est alors émise vers le serveur Web pour récupérer cette ressource.

  2. Le serveur web (ici Apache) reçoit la requête et détecte que la ressource demandée possède l’extension .php. Donc, au lieu de renvoyer directement son contenu au navigateur, il l’envoie à l’interpréteur PHP — via un module dédié — pour qu’il l’exécute.

  3. L’interpréteur PHP ouvre le fichier index.php qui contient à la fois des balises HTML et du code PHP puis il interprète tout le code PHP qui est inclus dans les balises <?php …​ ?> (il peut en avoir plusieurs au sein d’un même fichier).

    En revanche, il renvoit tel quel vers le serveur tout ce qui n’est pas du code PHP.

    Le serveur reçoit le résultat de l’interprétation du fichier index.php (c’est-à-dire tout le code qui n’est pas du PHP ET tout ce que PHP désire renvoyer vers le serveur via son flux de sortie (→ stdout). Dans l’exemple, c’est l’instruction echo qui s’en charge en renvoyant vers le serveur la phrase qui indique l’heure courante.

  4. Le serveur Web ajoute, au début de ce résultat d’interprétation, un entête HTTP de réponse à la requête initiale passée par le navigateur et lui renvoie le tout.

  5. Le navigateur interprète ce que lui a renvoyé le serveur et l’affiche.

PHP vs. Javascript
  • PHP s’exécute côté serveur (→ module PHP du serveur Apache). Il diffère donc du code JavaScript étudié jusqu’à maintenant puisque celui-ci était interprété côté client (→ dans le navigateur internet).

  • PHP et Javascript seront généralement utilisés ensemble pour réaliser des sites web dynamiques.

    PHP construira “à la volée” des pages Web au gré des requêtes qui parviennent au serveur. Ces pages seront ensuite renvoyées au navigateur qui pourra alors ensuite les “dynamiser” en agissant sur le Document Object Model (DOM) via les scripts Javascript qu’elles contiennent.

  • Javascript peut également être utilisé côté serveur pour générer des pages web via l’environnement d’exécution Node.js et notamment son module Express.js.

🞄  🞄  🞄