PHP Défi final
Le bulletin de notes
Tableau associatif, boucle, fonction et condition, réunis pour générer un bulletin.
Ce défi réunit les tableaux, les boucles, les conditions et les fonctions. Rappel : pour un tableau associatif, la boucle s'écrit foreach ($tableau as $cle => $valeur).
Le défi
- crée un tableau associatif
$notesavec au moins 3 élèves et leur note, par exemple"Léa" => 15; - écris une fonction
mentionqui prend une note et renvoie « Très bien » à partir de 16, « Bien » à partir de 14, « Assez bien » à partir de 12, et « Passable » sinon ; - avec
foreach, affiche pour chaque élève une ligne<li>avec son prénom (protégé parhtmlspecialchars), sa note et sa mention.
index.php
- $notes est un tableau associatif d'au moins 3 élèves
- Une fonction mention prend une note
- Elle teste 16, 14 et 12
- Elle renvoie les mentions avec return
- foreach parcourt $notes avec la clé et la valeur
- Chaque ligne est un <li> qui appelle mention()
- Le prénom est protégé par htmlspecialchars
Bravo, toutes les consignes sont réussies !
Bloqué ? Voir une solution
<?php
$notes = ["Léa" => 17, "Tom" => 13, "Inès" => 9];
function mention(int $note): string
{
if ($note >= 16) {
return "Très bien";
} elseif ($note >= 14) {
return "Bien";
} elseif ($note >= 12) {
return "Assez bien";
}
return "Passable";
}
echo "<ul>";
foreach ($notes as $prenom => $note) {
echo "<li>" . htmlspecialchars($prenom) . " : $note/20, " . mention($note) . "</li>";
}
echo "</ul>"; Défi réussi !
Ton badge PHP passe en or dès que toutes les leçons du cours sont terminées. Retrouve tes badges sur la page d'accueil.