ReflectionObject_isInstance_basic.phpt 707 B

123456789101112131415161718192021222324252627282930313233
  1. --TEST--
  2. ReflectionObject::isInstance() - basic function test
  3. --FILE--
  4. <?php
  5. class A {}
  6. class B extends A {}
  7. class X {}
  8. $classes = array("A", "B", "X");
  9. $instances = array( "myA" => new A,
  10. "myB" => new B,
  11. "myX" => new X );
  12. foreach ($classes as $class) {
  13. $ro = new ReflectionObject(new $class);
  14. foreach ($instances as $name => $instance) {
  15. echo "is $name a $class? ";
  16. var_dump($ro->isInstance($instance));
  17. }
  18. }
  19. ?>
  20. --EXPECT--
  21. is myA a A? bool(true)
  22. is myB a A? bool(true)
  23. is myX a A? bool(false)
  24. is myA a B? bool(false)
  25. is myB a B? bool(true)
  26. is myX a B? bool(false)
  27. is myA a X? bool(false)
  28. is myB a X? bool(false)
  29. is myX a X? bool(true)