summaryrefslogtreecommitdiff
path: root/Zend/tests/try/catch_finally_003.phpt
blob: 610d701872b14e9e69c337b29ad82652ec78c140 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
--TEST--
Try catch finally (with multi-returns)
--FILE--
<?php
function dummy($msg) {
   var_dump($msg);
}

function foo ($a) {
   try {
       dummy("try");
       return $a;
   } catch (Exception $e) {
       throw $e;
   } finally {
       dummy("finally");
       return "finally";
   }
   return "end";
}

function &bar($a) {
   try {
     echo "try\n";
     throw new Exception("ex");
   } catch (Exception $e) {
   } finally {
     return $a;
   }
   return ($c = "end");
}
var_dump(foo("para"));
var_dump(bar("para"));
?>
--EXPECT--
string(3) "try"
string(7) "finally"
string(7) "finally"
try
string(4) "para"