Annotation of embedaddon/php/ext/reflection/tests/ReflectionClass_isInstance_basic.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: ReflectionClass::isInstance()
3: --FILE--
4: <?php
5: class A {}
6: class B extends A {}
7:
8: interface I {}
9: class C implements I {}
10:
11: class X {}
12:
13: $classes = array("A", "B", "C", "I", "X");
14:
15: $instances = array( "myA" => new A,
16: "myB" => new B,
17: "myC" => new C,
18: "myX" => new X );
19:
20: foreach ($classes as $class) {
21: $rc = new ReflectionClass($class);
22:
23: foreach ($instances as $name => $instance) {
24: echo "is $name a $class? ";
25: var_dump($rc->isInstance($instance));
26: }
27:
28: }
29:
30: ?>
31: --EXPECTF--
32: is myA a A? bool(true)
33: is myB a A? bool(true)
34: is myC a A? bool(false)
35: is myX a A? bool(false)
36: is myA a B? bool(false)
37: is myB a B? bool(true)
38: is myC a B? bool(false)
39: is myX a B? bool(false)
40: is myA a C? bool(false)
41: is myB a C? bool(false)
42: is myC a C? bool(true)
43: is myX a C? bool(false)
44: is myA a I? bool(false)
45: is myB a I? bool(false)
46: is myC a I? bool(true)
47: is myX a I? bool(false)
48: is myA a X? bool(false)
49: is myB a X? bool(false)
50: is myC a X? bool(false)
51: is myX a X? bool(true)
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>