Zend_Exception-Previous.xml 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 24249 -->
  4. <sect1 id="zend.exception.previous">
  5. <title>Previous Exceptions (前の例外)</title>
  6. <para>
  7. Zend Framework 1.10 から、 <classname>Zend_Exception</classname> は <acronym>PHP</acronym> 5.3 がサポートする
  8. previous exceptions (前の例外)を実装しています。単に配置するだけで、 <methodname>catch</methodname>
  9. 節に、元の例外を参照する新しい例外を投げることができ、デバッグの際の追加コンテキスト
  10. の提供を助けます。 Zend Framework にてこのサポートを提供することによって、あなたのコードは
  11. <acronym>PHP</acronym> 5.3 と互換性のあるものへと転換するでしょう。
  12. </para>
  13. <para>
  14. Previous exceptions は例外のコンストラクタへの第 3 引数として示されます。
  15. </para>
  16. <example id="zend.exception.previous.example">
  17. <title>Previous exceptions (前の例外)</title>
  18. <programlisting language="php"><![CDATA[
  19. try {
  20. $db->query($sql);
  21. } catch (Zend_Db_Statement_Exception $e) {
  22. if ($e->getPrevious()) {
  23. echo '[' . get_class($e)
  24. . '] has the previous exception of ['
  25. . get_class($e->getPrevious())
  26. . ']' . PHP_EOL;
  27. } else {
  28. echo '[' . get_class($e)
  29. . '] does not have a previous exception'
  30. . PHP_EOL;
  31. }
  32. echo $e;
  33. // 可能な場合、最初の例外で始まる例外を全て表示します。
  34. }
  35. ]]></programlisting>
  36. </example>
  37. </sect1>
  38. <!--
  39. vim:se ts=4 sw=4 et:
  40. -->