PHP : le langage qui fait tourner le web
PHP fait fonctionner 79% des sites web, dont WordPress, Facebook et Wikipedia. C’est un langage côté serveur : le code PHP s’exécute sur le serveur et envoie du HTML au navigateur.
Installer PHP en local
Installez XAMPP (Windows/Mac) ou WAMP (Windows) :
- Téléchargez XAMPP depuis apachefriends.org
- Installez et lancez Apache + MySQL
- Placez vos fichiers dans
C:\xampp\htdocs\ - Accédez à
http://localhost/votre-fichier.php
Votre premier script PHP
<?php
// Tout code PHP est entre <?php et ?>
echo "Bonjour depuis PHP !";
// PHP peut s'intégrer dans du HTML
?>
<!DOCTYPE html>
<html>
<body>
<h1><?php echo "Bienvenue sur mon site"; ?></h1>
<p>Il est <?= date('H:i') ?> à Dakar.</p>
<!-- <?= ... ?> est un raccourci pour <?php echo ... ?> -->
</body>
</html>
Variables et types de données
<?php
// Les variables commencent par $
$nom = "Mamadou"; // String (texte)
$age = 25; // Integer (entier)
$prix = 15000.50; // Float (décimal)
$estEtudiant = true; // Boolean (vrai/faux)
$competences = ["HTML", "CSS", "JavaScript"]; // Array (tableau)
// Afficher une variable dans du texte
echo "Je m'appelle $nom et j'ai $age ans.";
// Résultat : Je m'appelle Mamadou et j'ai 25 ans.
// Concaténation avec le point (.)
echo "Formation : " . $competences[0] . ", " . $competences[1];
?>
Conditions (if / else)
<?php
$note = 14;
if ($note >= 16) {
echo "Mention Très Bien 🏆";
} elseif ($note >= 14) {
echo "Mention Bien 👍";
} elseif ($note >= 12) {
echo "Mention Assez Bien";
} elseif ($note >= 10) {
echo "Admis";
} else {
echo "Non admis - courage pour la prochaine fois !";
}
// Opérateur ternaire (raccourci)
$statut = ($age >= 18) ? "Majeur" : "Mineur";
?>
Boucles
<?php
// Boucle for
for ($i = 1; $i <= 5; $i++) {
echo "Formation n°$i<br>";
}
// Boucle foreach (pour les tableaux)
$formations = ["Développement Web", "Marketing Digital", "Cybersécurité"];
foreach ($formations as $formation) {
echo "<li>$formation</li>";
}
// Avec la clé (index)
foreach ($formations as $index => $formation) {
echo ($index + 1) . ". $formation<br>";
}
// Boucle while
$compteur = 0;
while ($compteur < 3) {
echo "Tour $compteur<br>";
$compteur++;
}
?>
Fonctions
<?php
// Créer une fonction
function saluer($nom, $heure = "matin") {
if ($heure === "matin") {
return "Bonjour $nom !";
} else {
return "Bonsoir $nom !";
}
}
echo saluer("Fatou"); // Bonjour Fatou !
echo saluer("Ibrahima", "soir"); // Bonsoir Ibrahima !
// Fonction qui calcule un prix TTC (TVA Sénégal : 18%)
function prixTTC($prixHT, $tva = 0.18) {
return $prixHT * (1 + $tva);
}
echo prixTTC(10000) . " FCFA"; // 11800 FCFA
?>
Tableaux associatifs (dictionnaires)
<?php
// Tableau associatif = paires clé => valeur
$etudiant = [
"nom" => "Diallo",
"prenom" => "Mamadou",
"age" => 25,
"formation" => "Développement Web",
"competences" => ["HTML", "CSS", "PHP", "MySQL"]
];
echo $etudiant["prenom"]; // Mamadou
echo $etudiant["competences"][2]; // PHP
// Ajouter un élément
$etudiant["email"] = "mamadou@email.com";
// Parcourir
foreach ($etudiant as $cle => $valeur) {
if (is_array($valeur)) {
echo "$cle : " . implode(", ", $valeur) . "<br>";
} else {
echo "$cle : $valeur<br>";
}
}
?>
Récupérer les données d'un formulaire
<!-- formulaire.html -->
<form action="traitement.php" method="POST">
<input type="text" name="nom" placeholder="Votre nom">
<input type="email" name="email" placeholder="Votre email">
<button type="submit">Envoyer</button>
</form>
<!-- traitement.php -->
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Récupérer et sécuriser les données
$nom = htmlspecialchars(trim($_POST['nom']));
$email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
if (!empty($nom) && filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Merci $nom ! Nous vous contacterons à $email.";
} else {
echo "Données invalides.";
}
}
?>
Fonctions PHP indispensables
| Fonction | Usage | Exemple |
|---|---|---|
strlen() |
Longueur d'un texte | strlen("Dakar") → 5 |
strtolower() |
Minuscules | strtolower("DAKAR") → dakar |
explode() |
Découper un texte | explode(",", "a,b,c") → ["a","b","c"] |
implode() |
Joindre un tableau | implode("-", [2024,1,15]) → "2024-1-15" |
date() |
Date formatée | date("d/m/Y") → 15/03/2024 |
array_push() |
Ajouter au tableau | array_push($arr, "new") |
Exercice pratique
🎯 Défi : Mini-application PHP
- Créez un formulaire qui demande le nom, l'âge et la formation souhaitée
- En PHP, validez les données et affichez un résumé
- Si l'âge < 16, affichez "Vous êtes trop jeune pour cette formation"
- Calculez le prix TTC (18% TVA) de la formation choisie
- Affichez le tout dans une belle carte HTML