basic.phpt 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. --TEST--
  2. Basic test
  3. --FILE--
  4. <?php
  5. function test($a, $b, $c = "c", $d = "d", $e = "e") {
  6. echo "a=$a, b=$b, c=$c, d=$d, e=$e\n";
  7. }
  8. function test3(&$a, &$b, &$c = "c", &$d = "d", &$e = "e") {
  9. echo "a=$a, b=$b, c=$c, d=$d, e=$e\n";
  10. }
  11. function &id($x) {
  12. return $x;
  13. }
  14. $a = "A"; $b = "B"; $c = "C"; $d = "D"; $e = "E";
  15. echo "SEND_VAL:\n";
  16. test("A", "B", "C", d: "D", e: "E");
  17. test("A", "B", "C", e: "E", d: "D");
  18. test(e: "E", a: "A", d: "D", b: "B", c: "C");
  19. test("A", "B", "C", e: "E");
  20. echo "SEND_VAL_EX:\n";
  21. test2("A", "B", "C", d: "D", e: "E");
  22. test2("A", "B", "C", e: "E", d: "D");
  23. test2(e: "E", a: "A", d: "D", b: "B", c: "C");
  24. test2("A", "B", "C", e: "E");
  25. echo "SEND_VAR:\n";
  26. test($a, $b, $c, d: $d, e: $e);
  27. test($a, $b, $c, e: $e, d: $d);
  28. test(e: $e, a: $a, d: $d, b: $b, c: $c);
  29. test(a: $a, b: $b, c: $c, e: $e);
  30. echo "SEND_VAR_EX:\n";
  31. test2($a, $b, $c, d: $d, e: $e);
  32. test2($a, $b, $c, e: $e, d: $d);
  33. test2(e: $e, a: $a, d: $d, b: $b, c: $c);
  34. test2(a: $a, b: $b, c: $c, e: $e);
  35. echo "SEND_VAR_NO_REF:\n";
  36. test3(id("A"), id("B"), id("C"), d: id("D"), e: id("E"));
  37. test3(id("A"), id("B"), id("C"), e: id("E"), d: id("D"));
  38. test3(e: id("E"), a: id("A"), d: id("D"), b: id("B"), c: id("C"));
  39. test3(id("A"), id("B"), id("C"), e: id("E"));
  40. echo "SEND_VAR_NO_REF_EX:\n";
  41. test4(id("A"), id("B"), id("C"), d: id("D"), e: id("E"));
  42. test4(id("A"), id("B"), id("C"), e: id("E"), d: id("D"));
  43. test4(e: id("E"), a: id("A"), d: id("D"), b: id("B"), c: id("C"));
  44. test4(id("A"), id("B"), id("C"), e: id("E"));
  45. echo "SEND_REF:\n";
  46. test3($a, $b, $c, d: $d, e: $e);
  47. test3($a, $b, $c, e: $e, d: $d);
  48. test3(e: $e, a: $a, d: $d, b: $b, c: $c);
  49. test3(a: $a, b: $b, c: $c, e: $e);
  50. function test2($a, $b, $c = "c", $d = "d", $e = "e") {
  51. echo "a=$a, b=$b, c=$c, d=$d, e=$e\n";
  52. }
  53. function test4(&$a, &$b, &$c = "c", &$d = "d", &$e = "e") {
  54. echo "a=$a, b=$b, c=$c, d=$d, e=$e\n";
  55. }
  56. ?>
  57. --EXPECT--
  58. SEND_VAL:
  59. a=A, b=B, c=C, d=D, e=E
  60. a=A, b=B, c=C, d=D, e=E
  61. a=A, b=B, c=C, d=D, e=E
  62. a=A, b=B, c=C, d=d, e=E
  63. SEND_VAL_EX:
  64. a=A, b=B, c=C, d=D, e=E
  65. a=A, b=B, c=C, d=D, e=E
  66. a=A, b=B, c=C, d=D, e=E
  67. a=A, b=B, c=C, d=d, e=E
  68. SEND_VAR:
  69. a=A, b=B, c=C, d=D, e=E
  70. a=A, b=B, c=C, d=D, e=E
  71. a=A, b=B, c=C, d=D, e=E
  72. a=A, b=B, c=C, d=d, e=E
  73. SEND_VAR_EX:
  74. a=A, b=B, c=C, d=D, e=E
  75. a=A, b=B, c=C, d=D, e=E
  76. a=A, b=B, c=C, d=D, e=E
  77. a=A, b=B, c=C, d=d, e=E
  78. SEND_VAR_NO_REF:
  79. a=A, b=B, c=C, d=D, e=E
  80. a=A, b=B, c=C, d=D, e=E
  81. a=A, b=B, c=C, d=D, e=E
  82. a=A, b=B, c=C, d=d, e=E
  83. SEND_VAR_NO_REF_EX:
  84. a=A, b=B, c=C, d=D, e=E
  85. a=A, b=B, c=C, d=D, e=E
  86. a=A, b=B, c=C, d=D, e=E
  87. a=A, b=B, c=C, d=d, e=E
  88. SEND_REF:
  89. a=A, b=B, c=C, d=D, e=E
  90. a=A, b=B, c=C, d=D, e=E
  91. a=A, b=B, c=C, d=D, e=E
  92. a=A, b=B, c=C, d=d, e=E