Previous Exceptions (前の例外)

Zend Framework 1.10 から、 Zend_ExceptionPHP 5.3 がサポートする previous exceptions (前の例外)を実装しています。単に配置するだけで、 catch 節に、元の例外を参照する新しい例外を投げることができ、デバッグの際の追加コンテキスト の提供を助けます。 Zend Framework にてこのサポートを提供することによって、あなたのコードは PHP 5.3 と互換性のあるものへと転換するでしょう。

Previous exceptions は例外のコンストラクタへの第 3 引数として示されます。

Example #1 Previous exceptions (前の例外)

  1. try {
  2.     $db->query($sql);
  3. } catch (Zend_Db_Statement_Exception $e) {
  4.     if ($e->getPrevious()) {
  5.         echo '[' . get_class($e)
  6.             . '] has the previous exception of ['
  7.             . get_class($e->getPrevious())
  8.             . ']' . PHP_EOL;
  9.     } else {
  10.         echo '[' . get_class($e)
  11.             . '] does not have a previous exception'
  12.             . PHP_EOL;
  13.     }
  14.  
  15.     echo $e;
  16.     // 可能な場合、最初の例外で始まる例外を全て表示します。
  17. }
blog comments powered by Disqus