Exercices PHP
Exercice 1 : premiers affichages
Section intitulée « Exercice 1 : premiers affichages »But. Afficher une courte fiche de commerce en combinant texte, variables et concaténation.
-
Créez
fiche.phpdanshtdocs. Déclarez d’abord les données dans des variables :<?php$businessName = "Dépanneur Chez Ti-Jean";$city = "Montréal";$openHour = 7;?> -
Affichez une phrase en concaténant les variables avec l’opérateur
.:<?phpecho "Le commerce " . $businessName . " est situé à " . $city . ".";?> -
PHP interpole aussi les variables directement dans une chaîne à guillemets doubles. Cette version est équivalente et plus lisible :
<?phpecho "Ouvre à {$openHour} h.";?> -
Solution complète :
<?php$businessName = "Dépanneur Chez Ti-Jean";$city = "Montréal";$openHour = 7;echo "Le commerce {$businessName} est situé à {$city}. ";echo "Il ouvre à {$openHour} h.";?>
Exercice 2 : prix et taxes
Section intitulée « Exercice 2 : prix et taxes »But. Calculer le prix total d’un article en ajoutant les taxes québécoises.
Déclarez un prix avant taxes dans une variable. Calculez la TPS (5 %) et la TVQ (9,975 %), puis affichez le sous-total, chaque taxe et le total, arrondis à deux décimales avec round(...) ou number_format(...).
Exercice 3 : manipulation de chaînes
Section intitulée « Exercice 3 : manipulation de chaînes »But. Normaliser le nom d’un commerce saisi de façon irrégulière.
À partir de la variable $raw = " cabane à sucre l'érablière dorée ", produisez : le nom sans espaces superflus, le nom en majuscules, et sa longueur en caractères.
Exercice 4 : conditions
Section intitulée « Exercice 4 : conditions »But. Vérifier si un client peut acheter de l’alcool (18 ans et plus au Québec).
À partir d’une variable $age, affichez « Vente autorisée » si l’âge est suffisant, sinon « Vente refusée ». Ajoutez un troisième cas pour un âge invalide (négatif).
Exercice 5 : ternaire et valeur par défaut
Section intitulée « Exercice 5 : ternaire et valeur par défaut »But. Afficher un message de bienvenue robuste même si le prénom est absent.
À partir d’une variable $firstName qui peut valoir null, affichez « Bonjour, {prénom} » ou « Bonjour, cliente ou client » si le prénom n’est pas fourni.
Exercice 6 : boucle for
Section intitulée « Exercice 6 : boucle for »But. Produire les lignes d’une facture.
Avec une boucle for, affichez un tableau HTML de 5 lignes numérotées (« Ligne 1 », « Ligne 2 », etc.). L’objectif est de générer du HTML par programmation, pas de l’écrire à la main.
Exercice 7 : tableau associatif et foreach
Section intitulée « Exercice 7 : tableau associatif et foreach »But. Afficher le menu d’une poutinerie.
Déclarez un tableau associatif $menu reliant un nom de plat à son prix (au moins quatre entrées). Parcourez-le avec foreach pour afficher une liste <ul> au format « Plat : 9,50 $ ».
Exercice 8: Filtrer un catalogue de produits
Section intitulée « Exercice 8: Filtrer un catalogue de produits »But. Manipuler un tableau de produits.
<?php
$products = [ ["name" => "Café", "category" => "boisson", "price" => 3.50], ["name" => "Thé", "category" => "boisson", "price" => 2.75], ["name" => "Muffin", "category" => "nourriture", "price" => 4.25], ["name" => "Sandwich", "category" => "nourriture", "price" => 8.95],];- Affichez tous les produits dans une liste HTML.
- Créez un tableau
$cheapProductscontenant seulement les produits de moins de 5 $. - Calculez le prix moyen des produits.
- Affichez les résultats dans la page.
Exercice 9: Corriger les erreurs
Section intitulée « Exercice 9: Corriger les erreurs »But. Lire un script avec erreurs et le corriger.
<?php
$products = [ ["name" => "Café", "price" => 3.50], ["name" => "Thé", "price" => 2.75]]
foreach ($products as $product) { echo "<p>" . $product["name"] . " : " . $product["prix"] . "$</p>";}
echo "Nombre de produits : " . count($product);?>Exercice 10: Page dynamique complète
Section intitulée « Exercice 10: Page dynamique complète »But. Générer une vraie page dynamique.
À partir d’un tableau de produits, générez une page HTML valide qui affiche :
- un titre ;
- un tableau HTML contenant le nom, la catégorie et le prix de chaque produit ;
- le nombre total de produits ;
- la liste des produits à moins de 5 $ ;
- les produits triés du moins cher au plus cher.
Données de départ
Section intitulée « Données de départ »<?php
$products = [ ["name" => "Café", "category" => "boisson", "price" => 3.50], ["name" => "Thé", "category" => "boisson", "price" => 2.75], ["name" => "Muffin", "category" => "nourriture", "price" => 4.25], ["name" => "Sandwich", "category" => "nourriture", "price" => 8.95], ["name" => "Salade", "category" => "nourriture", "price" => 7.50],];Contraintes
Section intitulée « Contraintes »- utilisez
number_formatpour afficher les prix ; - utilisez
htmlspecialcharspour afficher les textes dans le HTML.