009.phpt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. --TEST--
  2. ReflectionFunction basic tests
  3. --INI--
  4. opcache.save_comments=1
  5. --FILE--
  6. <?php
  7. /**
  8. hoho
  9. */
  10. function test ($a, $b = 1, $c = "") {
  11. static $var = 1;
  12. }
  13. $func = new ReflectionFunction("test");
  14. echo $func;
  15. echo "--getName--\n";
  16. var_dump($func->getName());
  17. echo "--isInternal--\n";
  18. var_dump($func->isInternal());
  19. echo "--isUserDefined--\n";
  20. var_dump($func->isUserDefined());
  21. echo "--getFilename--\n";
  22. var_dump($func->getFilename());
  23. echo "--getStartline--\n";
  24. var_dump($func->getStartline());
  25. echo "--getEndline--\n";
  26. var_dump($func->getEndline());
  27. echo "--getDocComment--\n";
  28. var_dump($func->getDocComment());
  29. echo "--getStaticVariables--\n";
  30. var_dump($func->getStaticVariables());
  31. echo "--invoke--\n";
  32. var_dump($func->invoke(array(1,2,3)));
  33. echo "--invokeArgs--\n";
  34. var_dump($func->invokeArgs(array(1,2,3)));
  35. echo "--returnsReference--\n";
  36. var_dump($func->returnsReference());
  37. echo "--getParameters--\n";
  38. var_dump($func->getParameters());
  39. echo "--getNumberOfParameters--\n";
  40. var_dump($func->getNumberOfParameters());
  41. echo "--getNumberOfRequiredParameters--\n";
  42. var_dump($func->getNumberOfRequiredParameters());
  43. echo "Done\n";
  44. ?>
  45. --EXPECTF--
  46. /**
  47. hoho
  48. */
  49. Function [ <user> function test ] {
  50. @@ %s009.php 6 - 8
  51. - Parameters [3] {
  52. Parameter #0 [ <required> $a ]
  53. Parameter #1 [ <optional> $b = 1 ]
  54. Parameter #2 [ <optional> $c = '' ]
  55. }
  56. }
  57. --getName--
  58. string(4) "test"
  59. --isInternal--
  60. bool(false)
  61. --isUserDefined--
  62. bool(true)
  63. --getFilename--
  64. string(%d) "%s009.php"
  65. --getStartline--
  66. int(6)
  67. --getEndline--
  68. int(8)
  69. --getDocComment--
  70. string(%d) "/**
  71. hoho
  72. */"
  73. --getStaticVariables--
  74. array(1) {
  75. ["var"]=>
  76. int(1)
  77. }
  78. --invoke--
  79. NULL
  80. --invokeArgs--
  81. NULL
  82. --returnsReference--
  83. bool(false)
  84. --getParameters--
  85. array(3) {
  86. [0]=>
  87. object(ReflectionParameter)#2 (1) {
  88. ["name"]=>
  89. string(1) "a"
  90. }
  91. [1]=>
  92. object(ReflectionParameter)#3 (1) {
  93. ["name"]=>
  94. string(1) "b"
  95. }
  96. [2]=>
  97. object(ReflectionParameter)#4 (1) {
  98. ["name"]=>
  99. string(1) "c"
  100. }
  101. }
  102. --getNumberOfParameters--
  103. int(3)
  104. --getNumberOfRequiredParameters--
  105. int(1)
  106. Done