ReflectionClass_hasMethod_001.phpt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. --TEST--
  2. ReflectionClass::hasMethod()
  3. --CREDITS--
  4. Robin Fernandes <robinf@php.net>
  5. Steve Seear <stevseea@php.net>
  6. --FILE--
  7. <?php
  8. class pubf {
  9. public function f() {}
  10. static public function s() {}
  11. }
  12. class subpubf extends pubf {
  13. }
  14. class protf {
  15. protected function f() {}
  16. static protected function s() {}
  17. }
  18. class subprotf extends protf {
  19. }
  20. class privf {
  21. private function f() {}
  22. static private function 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 f(): ";
  32. var_dump($rc->hasMethod("f"));
  33. echo " --> Check for s(): ";
  34. var_dump($rc->hasMethod("s"));
  35. echo " --> Check for F(): ";
  36. var_dump($rc->hasMethod("F"));
  37. echo " --> Check for doesNotExist(): ";
  38. var_dump($rc->hasMethod("doesNotExist"));
  39. }
  40. ?>
  41. --EXPECT--
  42. Reflecting on class pubf:
  43. --> Check for f(): bool(true)
  44. --> Check for s(): bool(true)
  45. --> Check for F(): bool(true)
  46. --> Check for doesNotExist(): bool(false)
  47. Reflecting on class subpubf:
  48. --> Check for f(): bool(true)
  49. --> Check for s(): bool(true)
  50. --> Check for F(): bool(true)
  51. --> Check for doesNotExist(): bool(false)
  52. Reflecting on class protf:
  53. --> Check for f(): bool(true)
  54. --> Check for s(): bool(true)
  55. --> Check for F(): bool(true)
  56. --> Check for doesNotExist(): bool(false)
  57. Reflecting on class subprotf:
  58. --> Check for f(): bool(true)
  59. --> Check for s(): bool(true)
  60. --> Check for F(): bool(true)
  61. --> Check for doesNotExist(): bool(false)
  62. Reflecting on class privf:
  63. --> Check for f(): bool(true)
  64. --> Check for s(): bool(true)
  65. --> Check for F(): bool(true)
  66. --> Check for doesNotExist(): bool(false)
  67. Reflecting on class subprivf:
  68. --> Check for f(): bool(true)
  69. --> Check for s(): bool(true)
  70. --> Check for F(): bool(true)
  71. --> Check for doesNotExist(): bool(false)