Leçons de niveau 14

PHP/Exceptions

Une page de Wikiversité.
< PHP
Sauter à la navigation Sauter à la recherche
Début de la boite de navigation du chapitre
Exceptions
Icône de la faculté
Chapitre no 14
Leçon : PHP
Chap. préc. :Mails
fin de la boite de navigation du chapitre
Icon falscher Titel.svg
En raison de limitations techniques, la typographie souhaitable du titre, « PHP : Exceptions
PHP/Exceptions
 », n'a pu être restituée correctement ci-dessus.

try ... catch[modifier | modifier le wikicode]

Tout comme en Java, la levée d'exception est assurée un bloc try ... catch :

try {
    echo '1 / 2 = ' 1/2;
    echo '3 / 0 = ' 3/0;    // instruction qui déclenchera l'exception
    echo '2 / 1 = ' 2/1;    // cette instruction ne sera pas exécutée à cause de la précédente
} catch (Exception $e) {
    echo $e->getMessage();  // afficher le message lié à l'exception
} finally {
    echo 'Fin du try';      // action facultative à la fin
}

Il n'est donc pas nécessaire de prévoir ce qui peut interrompre le programme pour s'en prémunir et poursuivre l'exécution en fonction.

throw[modifier | modifier le wikicode]

Pour déclencher une interruption du programme lors d'une exception, on utilise le mot "throw" :

if (!3/0) {
    throw new Exception('Division par zéro.');
}