catch(){} et try{}(2)

Eléphant du PHP | 226 Messages

26 févr. 2012, 14:18

Bonjour,

j'ai lu dans un tuto: http://www.apprendre-php.com/tutoriels/ ... artie.html

Il y a une partie qui est codé comme ça.
<?php
 
  try {
 
    $password = 'Toto';
 
    if('Emacs' !== $password) {
      throw new Exception('Votre password est incorrect !');
    }
 
    echo 'Bonjour Emacs';
  }
  catch(Exception $e)
  {
    echo 'L\'erreur suivante a été générée : '."\n";
    echo $e->getMessage();
  }
?>
Pourquoi entoure-t-on le "echo 'Bonjour Emacs';" ?
Djun, L'inoubliable et l'incontournable

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

26 févr. 2012, 16:07

C'est parce qu'il s'agit de l'exemple d'un tutoriel et qu'il est fait pour être testé. Tu pourras alors voir par toi même le résultat que obtenu lorsque tu lances des exceptions.

Essayes le code et regarde ce qu'il affiche. Si le message du echo est affiché, c'est que php continu l'exécution du code dans le try après avoir déclenché l'exception, s'il n'est pas affiché, c'est qu'il ne le fait pas...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 226 Messages

26 févr. 2012, 16:17

Sa affiche:

Code : Tout sélectionner

L'erreur suivante a été générée : Votre password est incorrect !
J'ai compris Merci ;D.
Djun, L'inoubliable et l'incontournable