Annotation of embedaddon/php/ext/reflection/tests/ReflectionClass_isInstance_basic.phpt, revision 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>