365 of 410 menu

La commande throw

La commande throw est utilisée pour lever explicitement une exception en PHP. Elle accepte un paramètre - un objet exception, qui doit être une instance d'une classe, héritée de la classe de base Exception. Lors de l'appel de cette fonction, l'exécution du code courant est immédiatement arrêtée, et PHP tente de trouver le bloc catch correspondant pour traiter l'exception.

Syntaxe

throw new ExceptionClass(message, code, previous);

Exemple

Un exemple simple de génération d'exception :

<?php $age = -5; if ($age < 0) { throw new Exception('L\'âge ne peut pas être négatif'); } ?>

Résultat de l'exécution du code :

Fatal error: Uncaught Exception: L'âge ne peut pas être négatif

Exemple

Exemple avec gestion d'exception :

<?php try { $res = 10 / 0; if (is_infinite($res)) { throw new Exception('Division par zéro'); } } catch (Exception $e) { echo 'Erreur : ' . $e->getMessage(); } ?>

Résultat de l'exécution du code :

'Erreur : Division par zéro'

Exemple

Utilisation d'une exception personnalisée :

<?php class MyCustomException extends Exception {} try { throw new MyCustomException('Message d\'erreur personnalisé'); } catch (MyCustomException $e) { echo 'Erreur personnalisée capturée : ' . $e->getMessage(); } ?>

Résultat de l'exécution du code :

'Erreur personnalisée capturée : Message d\'erreur personnalisé'

Voir aussi

  • la construction try,
    qui définit un bloc de code pour la gestion des exceptions
  • la construction catch,
    qui intercepte et traite les exceptions
  • la classe Exception,
    qui est la classe de base pour toutes les exceptions
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser