Médiaforma

PHP MySQL – Exercice sur les exceptions

Print Friendly

Modifiez le code pour que la valeur 1/3 soit également calculée.

Solution

Faites une pause dans la vidéo et modifiez le code. Poursuivez la vidéo pour prendre connaissance de la solution.

Pour que le troisième calcul soit toujours effectué, il suffit de placer l’appel à la fonction inverse(3) à l’extérieur du bloc catch.

Chronologiquement, on calcule :

  • L’inverse de 12,
  • L’inverse de 0. Ce calcul est protégé par la structure try catch. Une exception est détectée et un message d’erreur est affiché dans le bloc catch.
  • Le programme se poursuit alors par les instructions à l’extérieur du try. C’est ainsi que l’inverse de 3 est calculé.

 

Voici le code à utiliser :

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>Gestion des exceptions avec bloc finally</title>
  </head>
  <body>
    <?php
      function inverse($nombre){
        if ($nombre == 0)
          throw new exception("division par zéro");
        else
          echo "1/$nombre = ".(1/$nombre)."<br>";
      }
      echo inverse(12);
      try{
        echo inverse(0);
      }
      catch(exception $e){
        echo "Une exception a été générée : ".$e->getMessage()."<br>";
      }
      echo inverse(3);
    ?>
  </body>
</html>

 

 

Vous avez aimé cet article ? Partagez-le avec vos réseaux...
 
Comments

No comments yet.

Leave a Reply