diff options
Diffstat (limited to 'Zend/tests/catch_finally_004.phpt')
| -rw-r--r-- | Zend/tests/catch_finally_004.phpt | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Zend/tests/catch_finally_004.phpt b/Zend/tests/catch_finally_004.phpt new file mode 100644 index 0000000000..a2c22beab1 --- /dev/null +++ b/Zend/tests/catch_finally_004.phpt @@ -0,0 +1,41 @@ +--TEST-- +Try catch finally (nesting try-catch-finally) +--FILE-- +<?php + +function throw_exception($msg) { + throw new Exception($msg); +} + +function foo (&$ex) { + try { + echo "1"; + try { + echo "2"; + throw_exception("try"); + } catch (Exception $e) { + echo "3"; + throw_exception("catch"); + } finally { + echo "4"; + throw_exception("finally"); + } + } catch (Exception $e) { + $ex = $e; + echo "3"; + } finally { + echo "2"; + } + return 1; +} + +var_dump(foo($ex)); + +do { + var_dump($ex->getMessage()); +} while ($ex = $ex->getPrevious()); +?> +--EXPECT-- +123432int(1) +string(7) "finally" +string(5) "catch" |
