Annotation of embedaddon/php/ext/reflection/tests/bug46064_2.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Bug #46064.2 (Exception when creating ReflectionProperty object on dynamicly created property)
3: --FILE--
4: <?php
5:
6: class foo {
7: }
8:
9: $x = new foo;
10: $x->test = 2000;
11:
12:
13: $p = new ReflectionObject($x);
14: var_dump($p->getProperty('test'));
15:
16:
17: class bar {
18: public function __construct() {
19: $this->a = 1;
20: }
21: }
22:
23: class test extends bar {
24: private $b = 2;
25:
26: public function __construct() {
27: parent::__construct();
28:
29: $p = new reflectionobject($this);
30: var_dump($h = $p->getProperty('a'));
31: var_dump($h->isDefault(), $h->isProtected(), $h->isPrivate(), $h->isPublic(), $h->isStatic());
32: var_dump($p->getProperties());
33: }
34: }
35:
36: new test;
37:
38: ?>
39: ===DONE===
40: --EXPECTF--
41: object(ReflectionProperty)#%d (2) {
42: ["name"]=>
43: string(4) "test"
44: ["class"]=>
45: string(3) "foo"
46: }
47: object(ReflectionProperty)#%d (2) {
48: ["name"]=>
49: string(1) "a"
50: ["class"]=>
51: string(4) "test"
52: }
53: bool(false)
54: bool(false)
55: bool(false)
56: bool(true)
57: bool(false)
58: array(2) {
59: [0]=>
60: &object(ReflectionProperty)#%d (2) {
61: ["name"]=>
62: string(1) "b"
63: ["class"]=>
64: string(4) "test"
65: }
66: [1]=>
67: &object(ReflectionProperty)#%d (2) {
68: ["name"]=>
69: string(1) "a"
70: ["class"]=>
71: string(4) "test"
72: }
73: }
74: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>