Seit Zend Framework 1.10 implementiert Zend_Exception
die
Unterstützung von PHP 5.3 für vorgerige Exceptions. Einfach gesagt, wenn
man in einem catch
ist, kann man eine neue Exception werfen welche
auf die vorherige Exception referenziert, was wiederum hilft indem zusätzlicher Kontext
angeboten wird wenn man debuggt. Indem diese Unterstützung im Zend Framework angeboten wird,
ist der eigene Code jetzt vorwärts kompatibel mit PHP 5.3.
Vorherige Exceptions werden als drittes Argument an den Contructor der Exceptions indiziert.
Beispiel 383. Vorherige Exceptions
try { $db->query($sql); } catch (Zend_Db_Statement_Exception $e) { if ($e->getPrevious()) { echo '[' . get_class($e) . '] hat die vorherige Exception von [' . get_class($e->getPrevious()) . ']' . PHP_EOL; } else { echo '[' . get_class($e) . '] hat keine vorherige Exception' . PHP_EOL; } echo $e; // zeigt alle Exceptions beginnend mit der ersten geworfenen // Exception wenn vorhanden. }