Gestion des erreurs et débogage — Correction d'exercices

Voici des propositions de solutions en mode console (via readline()). N’hésite pas à les adapter.

#1 — Try / Catch

Utilise un bloc try/catch pour capturer une Exception lancée manuellement.

Voir le corrigé
<?php
try {
    throw new Exception("Une erreur est survenue !");
} catch (Exception $e) {
    echo "Message d'erreur : " . $e->getMessage();
}
?>

#2 — Division par zéro

Tente une division par zéro dans un bloc try/catch (PHP 7+ lance une DivisionByZeroError).

Voir le corrigé
<?php
try {
    echo 10 / 0;
} catch (DivisionByZeroError $e) {
    echo "Impossible de diviser par zéro.";
}
?>

#3 — Die / Exit

Arrête l'exécution du script avec die() si une variable $a est négative.

Voir le corrigé
<?php
$a = -5;
if ($a < 0) {
    die("Arrêt critique : a est négatif.");
}
echo "Ce texte ne s'affichera pas.";
?>

#4 — Gestionnaire d'erreurs personnalisé

Définis une fonction d'erreur simple avec set_error_handler().

Voir le corrigé
<?php
function monGestionnaire($c, $m) {
    echo "Erreur attrapée [$c] : $m";
}
set_error_handler("monGestionnaire");
echo $variableInexistante;
?>

#5 — Finally

Utilise un bloc finally qui s'exécute après un try/catch, qu'il y ait erreur ou non.

Voir le corrigé
<?php
try {
    echo "Traitement... ";
} catch (Exception $e) {
    echo "Erreur. ";
} finally {
    echo "Fin du traitement.";
}
?>
Besoin d'aide ?
Tuteur Virtuel
Bonjour ! Je suis votre tuteur virtuel. Comment puis-je vous aider avec ce cours aujourd'hui ?
Historique des conversations
Chargement...