constant_expressions_arrays.phpt 724 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. --TEST--
  2. Constant expressions with arrays
  3. --FILE--
  4. <?php
  5. const a = [1,2,[3,[4]]];
  6. const b = a[0];
  7. const c = a[2][0];
  8. const d = a[2];
  9. const e = ["string" => [1]]["string"][0];
  10. var_dump(b, c, e);
  11. function test ($a = d[1][0]) {
  12. var_dump($a);
  13. }
  14. test();
  15. class foo {
  16. const bar = [1][0];
  17. }
  18. var_dump(foo::bar);
  19. var_dump(a, a[0], a[2], a[2][1], a[3]);
  20. ?>
  21. --EXPECTF--
  22. int(1)
  23. int(3)
  24. int(1)
  25. int(4)
  26. int(1)
  27. Warning: Undefined array key 3 in %s on line %d
  28. array(3) {
  29. [0]=>
  30. int(1)
  31. [1]=>
  32. int(2)
  33. [2]=>
  34. array(2) {
  35. [0]=>
  36. int(3)
  37. [1]=>
  38. array(1) {
  39. [0]=>
  40. int(4)
  41. }
  42. }
  43. }
  44. int(1)
  45. array(2) {
  46. [0]=>
  47. int(3)
  48. [1]=>
  49. array(1) {
  50. [0]=>
  51. int(4)
  52. }
  53. }
  54. array(1) {
  55. [0]=>
  56. int(4)
  57. }
  58. NULL