002.phpt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. --TEST--
  2. func_get_arg() tests
  3. --FILE--
  4. <?php
  5. function test1() {
  6. var_dump(func_get_arg(-10));
  7. var_dump(func_get_arg(0));
  8. var_dump(func_get_arg(1));
  9. }
  10. function test2($a) {
  11. var_dump(func_get_arg(0));
  12. var_dump(func_get_arg(1));
  13. }
  14. function test3($a, $b) {
  15. var_dump(func_get_arg(0));
  16. var_dump(func_get_arg(1));
  17. var_dump(func_get_arg(2));
  18. }
  19. test1();
  20. test1(10);
  21. test2(1);
  22. test2();
  23. test3(1,2);
  24. call_user_func("test1");
  25. call_user_func("test3", 1);
  26. call_user_func("test3", 1, 2);
  27. class test {
  28. static function test1($a) {
  29. var_dump(func_get_arg(0));
  30. var_dump(func_get_arg(1));
  31. }
  32. }
  33. test::test1(1);
  34. var_dump(func_get_arg(1));
  35. echo "Done\n";
  36. ?>
  37. --EXPECTF--
  38. Warning: func_get_arg(): The argument number should be >= 0 in %s on line %d
  39. bool(false)
  40. Warning: func_get_arg(): Argument 0 not passed to function in %s on line %d
  41. bool(false)
  42. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  43. bool(false)
  44. Warning: func_get_arg(): The argument number should be >= 0 in %s on line %d
  45. bool(false)
  46. int(10)
  47. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  48. bool(false)
  49. int(1)
  50. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  51. bool(false)
  52. Warning: Missing argument 1 for test2(), called in %s on line %d and defined in %s on line %d
  53. Warning: func_get_arg(): Argument 0 not passed to function in %s on line %d
  54. bool(false)
  55. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  56. bool(false)
  57. int(1)
  58. int(2)
  59. Warning: func_get_arg(): Argument 2 not passed to function in %s on line %d
  60. bool(false)
  61. Warning: func_get_arg(): The argument number should be >= 0 in %s on line %d
  62. bool(false)
  63. Warning: func_get_arg(): Argument 0 not passed to function in %s on line %d
  64. bool(false)
  65. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  66. bool(false)
  67. Warning: Missing argument 2 for test3() in %s on line %d
  68. int(1)
  69. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  70. bool(false)
  71. Warning: func_get_arg(): Argument 2 not passed to function in %s on line %d
  72. bool(false)
  73. int(1)
  74. int(2)
  75. Warning: func_get_arg(): Argument 2 not passed to function in %s on line %d
  76. bool(false)
  77. int(1)
  78. Warning: func_get_arg(): Argument 1 not passed to function in %s on line %d
  79. bool(false)
  80. Warning: func_get_arg(): Called from the global scope - no function context in %s on line %d
  81. bool(false)
  82. Done