ReflectionClass_hasProperty_001.phpt 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. --TEST--
  2. ReflectionClass::hasProperty()
  3. --CREDITS--
  4. Robin Fernandes <robinf@php.net>
  5. Steve Seear <stevseea@php.net>
  6. --FILE--
  7. <?php
  8. class pubf {
  9. public $a;
  10. static public $s;
  11. }
  12. class subpubf extends pubf {
  13. }
  14. class protf {
  15. protected $a;
  16. static protected $s;
  17. }
  18. class subprotf extends protf {
  19. }
  20. class privf {
  21. private $a;
  22. static protected $s;
  23. }
  24. class subprivf extends privf {
  25. }
  26. $classes = array("pubf", "subpubf", "protf", "subprotf",
  27. "privf", "subprivf");
  28. foreach($classes as $class) {
  29. echo "Reflecting on class $class: \n";
  30. $rc = new ReflectionClass($class);
  31. echo " --> Check for s: ";
  32. var_dump($rc->hasProperty("s"));
  33. echo " --> Check for a: ";
  34. var_dump($rc->hasProperty("a"));
  35. echo " --> Check for A: ";
  36. var_dump($rc->hasProperty("A"));
  37. echo " --> Check for doesNotExist: ";
  38. var_dump($rc->hasProperty("doesNotExist"));
  39. }
  40. ?>
  41. --EXPECT--
  42. Reflecting on class pubf:
  43. --> Check for s: bool(true)
  44. --> Check for a: bool(true)
  45. --> Check for A: bool(false)
  46. --> Check for doesNotExist: bool(false)
  47. Reflecting on class subpubf:
  48. --> Check for s: bool(true)
  49. --> Check for a: bool(true)
  50. --> Check for A: bool(false)
  51. --> Check for doesNotExist: bool(false)
  52. Reflecting on class protf:
  53. --> Check for s: bool(true)
  54. --> Check for a: bool(true)
  55. --> Check for A: bool(false)
  56. --> Check for doesNotExist: bool(false)
  57. Reflecting on class subprotf:
  58. --> Check for s: bool(true)
  59. --> Check for a: bool(true)
  60. --> Check for A: bool(false)
  61. --> Check for doesNotExist: bool(false)
  62. Reflecting on class privf:
  63. --> Check for s: bool(true)
  64. --> Check for a: bool(true)
  65. --> Check for A: bool(false)
  66. --> Check for doesNotExist: bool(false)
  67. Reflecting on class subprivf:
  68. --> Check for s: bool(true)
  69. --> Check for a: bool(false)
  70. --> Check for A: bool(false)
  71. --> Check for doesNotExist: bool(false)