Exception throw catch try
Bonjour,
Je n'ai pas très bien compris le code suivant :
Voir ici http://fr.php.net/manual/fr/language.exceptions.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?php
function inverse($x) {
// !$x veut dire ... ?
if (!$x) {
// On lance une exception avec "throw new"
// Lorsqu'une exception est jetée, le code suivant
// le traitement ne sera pas exécuté et PHP tentera
// de trouver le premier bloc catch correspondant.
// Ici, on a jeté l'exception "Exception".
throw new Exception('On ne peut diviser par zéro.');
}
else return 1/$x;
}
// Je ne comprends pas ce try? C'est quand il n'y a pas d'exception lancée?
try {
echo inverse(5) . "\n<br/>";
echo inverse(0) . "\n";
}
// L'exception "Exception" est attrapée par "catch ()"
// $e->getMessage() permet de retourner le contenu de l'exception.
// qui n'est pas forcément une message.
catch (Exception $e)
{
echo 'Exception reçue : ', $e->getMessage(), "\n";
}
// Je ne comprends pas très bien ceci : "Le code devra être entouré d'un bloc
// try pour faciliter la saisie d'une exception potentielle."
?> |