| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.exception.previous">
- <title>Exceptions précédentes</title>
- <para>
- Depuis Zend Framework 1.10, <classname>Zend_Exception</classname> utilise les exceptions PHP 5.3
- concernant l'exception précédente. Simplement, dans un bloc <methodname>catch</methodname>, il est
- possible d'envoyer une exception faisant référence à la précédente, ce qui améliore le contexte de
- débogage. Ce support dans Zend Framework apporte le support complet de PHP 5.3 concernant les exceptions.
- </para>
- <para>
- L'exception précedente s'utilise comme troisième paramètre du constructeur de la classe Exception.
- </para>
- <example id="zend.exception.previous.example">
- <title>Exceptions précedentes</title>
- <programlisting language="php"><![CDATA[
- try {
- $db->query($sql);
- } catch (Zend_Db_Statement_Exception $e) {
- if ($e->getPrevious()) {
- echo '[' . get_class($e)
- . '] a comme exception précédente ['
- . get_class($e->getPrevious())
- . ']' . PHP_EOL;
- } else {
- echo '[' . get_class($e)
- . '] n'a pas d'exception qui la précède'
- . PHP_EOL;
- }
- echo $e;
- // affiche toutes les exception à commencer par la première, puis
- // dépile.
- }
- ]]></programlisting>
- </example>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|