Annotation of embedaddon/php/Zend/tests/030.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Overriding $this in catch and checking the object properties later.
! 3: --FILE--
! 4: <?php
! 5:
! 6: class foo {
! 7: public $test = 0;
! 8: private $test_2 = 1;
! 9: protected $test_3 = 2;
! 10:
! 11: public function bar() {
! 12: try {
! 13: throw new Exception('foo');
! 14: } catch (Exception $this) {
! 15: var_dump($this);
! 16: }
! 17:
! 18: $this->baz();
! 19: }
! 20:
! 21: public function baz() {
! 22: foreach ($this as $k => $v) {
! 23: printf("'%s' => '%s'\n", $k, $v);
! 24: }
! 25: print "ok\n";
! 26: }
! 27: }
! 28:
! 29: $test = new foo;
! 30: $test->bar();
! 31:
! 32: ?>
! 33: --EXPECTF--
! 34: object(Exception)#%d (7) {
! 35: ["message":protected]=>
! 36: string(3) "foo"
! 37: ["string":"Exception":private]=>
! 38: string(0) ""
! 39: ["code":protected]=>
! 40: int(0)
! 41: ["file":protected]=>
! 42: string(%d) "%s030.php"
! 43: ["line":protected]=>
! 44: int(%d)
! 45: ["trace":"Exception":private]=>
! 46: array(1) {
! 47: [0]=>
! 48: array(6) {
! 49: ["file"]=>
! 50: string(%d) "%s030.php"
! 51: ["line"]=>
! 52: int(%d)
! 53: ["function"]=>
! 54: string(3) "bar"
! 55: ["class"]=>
! 56: string(3) "foo"
! 57: ["type"]=>
! 58: string(2) "->"
! 59: ["args"]=>
! 60: array(0) {
! 61: }
! 62: }
! 63: }
! 64: ["previous":"Exception":private]=>
! 65: NULL
! 66: }
! 67: 'test' => '0'
! 68: 'test_2' => '1'
! 69: 'test_3' => '2'
! 70: ok
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>