Module 1Introduire la notion client/serveur
Chapitre 2 sur 11
Introduire le langage PHP
Découvrir PHP, son histoire, son fonctionnement côté serveur, ses atouts et les plateformes LAMP, WAMP et XAMPP.
- ≈ 105 min
- 3 leçons
- 1 vidéo
- 3 exercices
Module 1Introduire la notion client/serveur
Chapitre 2 sur 11
Découvrir PHP, son histoire, son fonctionnement côté serveur, ses atouts et les plateformes LAMP, WAMP et XAMPP.
Objectifs
Avec ce chapitre, tu sauras…
Leçon 1
| Date | Étape |
|---|---|
| 1994 | Rasmus Lerdorf écrit des outils pour publier son CV et compter ses visiteurs |
| 1995 | PHP/FI : Personal Home Page Tools, publié pour tous ; la version 2 ajoute conditions, boucles et formulaires |
| 1998 | PHP 3 : réécrit par Zeev Suraski et Andi Gutmans ; PHP devient PHP: Hypertext Preprocessor |
| 2000 | PHP 4 : moteur Zend Engine |
| 2004 | PHP 5 : vraie programmation orientée objet, PDO |
| 2015 | PHP 7 : performances doublées, typage des paramètres et des retours |
| 2020 | PHP 8 : compilation JIT, arguments nommés, match, opérateur ?-> |
| 2021 à aujourd'hui | PHP 8.1 (enum, readonly), 8.2, 8.3… |
Leçon 2
| PHP | JavaScript (M105) | |
|---|---|---|
| s'exécute | sur le serveur | dans le navigateur (et sur un serveur avec Node.js) |
| le visiteur voit le code ? |
Leçon 3
| Domaine | Description |
|---|---|
| scripts côté serveur | l'usage principal : un analyseur PHP + un serveur web + un navigateur |
| ligne de commande | php script.php dans un terminal, sans serveur ni navigateur : scripts planifiés (cron), traitement de fichiers |
| applications graphiques | possible avec l'extension PHP-GTK, mais rare |
| Catégorie |
|---|
1PHP s'exécute…
2Le visiteur d'une page PHP reçoit…
3Quelle version de PHP n'a jamais existé ?
4Une page contenant du PHP doit avoir l'extension…
5Dans LAMP, le L désigne…
6L'outil d'administration de bases écrit en PHP est…
L'essentiel du chapitre
match) ; pas de PHP 6.<?php … ?> ; fichier .php ; le visiteur ne voit que le HTML produit.| oui |
| accès à la base de données | oui, directement | non (il doit passer par une requête au serveur) |
| moment | avant l'envoi de la page | après la réception de la page |
| usage | générer les pages, traiter les formulaires, gérer les comptes | interactivité, animations, appels AJAX |
Vidéo · À regarder
FRApprendre le HTML - Tutoriel Pour Débutant (2h)
MaxCode · YouTube
| Langage de script (PHP, JavaScript, Python) | Langage compilé (C, C++, Go) | |
|---|---|---|
| traduction | interprété à l'exécution | compilé avant l'exécution en code machine |
| erreurs | détectées quand la ligne est atteinte | détectées à la compilation |
| intégration | souvent dans un autre environnement (le serveur web, le navigateur) | programme autonome |
| CMS (gestion de contenu) | WordPress (plus de 40 % des sites web), Drupal, Joomla |
| e-commerce | WooCommerce, PrestaShop, Magento |
| wiki | MediaWiki (le moteur de Wikipédia) |
| administration de bases | phpMyAdmin |
| frameworks | Laravel, Symfony, CodeIgniter, CakePHP |
| Pile | Système | Serveur web | Base | Langage |
|---|---|---|---|---|
| LAMP | Linux | Apache | MySQL / MariaDB | PHP |
| WAMP | Windows | Apache | MySQL | PHP |
| MAMP | macOS | Apache | MySQL | PHP |
| LEMP | Linux | Nginx (prononcé « Engine X ») | MySQL | PHP |
| XAMPP | multiplateforme (le X) | Apache | MariaDB | PHP et Perl |
La frise du résumé place une « version 6 » en 2014. PHP 6 n'est jamais sorti : le projet (centré sur l'Unicode) a été abandonné, et l'équipe est passée directement de PHP 5 à PHP 7 en 2015, pour éviter la confusion avec les livres déjà publiés sur un « PHP 6 » qui n'existait pas.
PHP signifie aujourd'hui PHP: Hypertext Preprocessor : le premier « P » contient l'acronyme lui-même. C'est un clin d'œil fréquent dans le monde du logiciel libre (comme GNU, « GNU's Not Unix »).
PHP est un langage de programmation interprété, orienté web, qui s'exécute côté serveur. Il a été conçu pour générer dynamiquement des pages HTML : le code PHP est placé dans une page HTML, entre les balises <?php et ?>. PHP est open source et gratuit (licence PHP). Sa syntaxe mélange C, Java et Perl.
Comment le serveur exécute une page PHP
1. Le navigateur demande GET /bonjour.php
2. Apache voit l'extension .php et passe le fichier à l'interpréteur PHP
3. PHP exécute le code entre <?php et ?> (et interroge MySQL si besoin)
4. Le résultat est du HTML pur, renvoyé par Apache au navigateur
5. Le navigateur affiche le HTML : il ne voit JAMAIS le code PHP<!DOCTYPE html>
<html lang="fr">
<head><meta charset="UTF-8"><title>Bonjour</title></head>
<body>
<h1>Bonjour !</h1>
<p>Nous sommes le <?php echo date('d/m/Y'); ?> et il est <?= date('H:i') ?>.</p>
</body>
</html>Le navigateur reçoit seulement : <p>Nous sommes le 01/11/2026 et il est 10:42.</p>. Fais clic droit, puis Afficher le code source : aucune trace du PHP.
.php indique au serveur qu'il faut interpréter le fichier (une page index.html contenant du PHP ne serait pas exécutée) ;http://localhost/..., jamais par un double-clic (file:///...) : sans serveur, le code PHP n'est pas exécuté.Tableau: PHP comparé à JavaScript
Tableau: Les grands projets en PHP
Crée htdocs/m107/ch02/index.php qui affiche : un titre, la date du jour au format 01/11/2026, la version de PHP du serveur (phpversion()), et un message « Bonjour », « Bon après-midi » ou « Bonsoir » selon l'heure. Ouvre-la avec http://localhost/m107/ch02/ et vérifie le code source reçu par le navigateur.
Écris exactement le HTML que reçoit le navigateur pour ce fichier, si la page est demandée un lundi à 9 h 05.
<p>Bonjour <?php echo "Sara"; ?> !</p>
<?php $heure = 9; ?>
<p><?= $heure < 12 ? "Bonne matinée" : "Bon après-midi" ?></p>Pour chaque tâche, dis si on l'écrit en PHP (serveur) ou en JavaScript (client), et pourquoi : (1) vérifier le mot de passe d'un utilisateur ; (2) afficher un menu déroulant au survol ; (3) enregistrer une commande dans la base ; (4) vérifier en direct la force d'un mot de passe pendant la saisie ; (5) envoyer un e-mail de confirmation.
Front-end, back-end et full-stack : où se place PHP (en français).
Tableau: Langage de script et langage compilé
Tableau: Les plateformes de développement
Ces piles s'installent en général avec un seul logiciel : XAMPP, WampServer, Laragon, MAMP.