request47456.phpt 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. --TEST--
  2. Request #47456 (Missing PCRE option 'J')
  3. --DESCRIPTION--
  4. The J modifier is supposed to be identical to the internal option (?J), so we're
  5. testing both.
  6. --FILE--
  7. <?php
  8. preg_match_all('/(?J)(?<chr>[ac])(?<num>\d)|(?<chr>[b])/', 'a1bc3', $m, PREG_SET_ORDER);
  9. var_dump($m);
  10. unset($m);
  11. preg_match_all('/(?<chr>[ac])(?<num>\d)|(?<chr>[b])/J', 'a1bc3', $m, PREG_SET_ORDER);
  12. var_dump($m);
  13. ?>
  14. --EXPECT--
  15. array(3) {
  16. [0]=>
  17. array(5) {
  18. [0]=>
  19. string(2) "a1"
  20. ["chr"]=>
  21. string(1) "a"
  22. [1]=>
  23. string(1) "a"
  24. ["num"]=>
  25. string(1) "1"
  26. [2]=>
  27. string(1) "1"
  28. }
  29. [1]=>
  30. array(6) {
  31. [0]=>
  32. string(1) "b"
  33. ["chr"]=>
  34. string(1) "b"
  35. [1]=>
  36. string(0) ""
  37. ["num"]=>
  38. string(0) ""
  39. [2]=>
  40. string(0) ""
  41. [3]=>
  42. string(1) "b"
  43. }
  44. [2]=>
  45. array(5) {
  46. [0]=>
  47. string(2) "c3"
  48. ["chr"]=>
  49. string(1) "c"
  50. [1]=>
  51. string(1) "c"
  52. ["num"]=>
  53. string(1) "3"
  54. [2]=>
  55. string(1) "3"
  56. }
  57. }
  58. array(3) {
  59. [0]=>
  60. array(5) {
  61. [0]=>
  62. string(2) "a1"
  63. ["chr"]=>
  64. string(1) "a"
  65. [1]=>
  66. string(1) "a"
  67. ["num"]=>
  68. string(1) "1"
  69. [2]=>
  70. string(1) "1"
  71. }
  72. [1]=>
  73. array(6) {
  74. [0]=>
  75. string(1) "b"
  76. ["chr"]=>
  77. string(1) "b"
  78. [1]=>
  79. string(0) ""
  80. ["num"]=>
  81. string(0) ""
  82. [2]=>
  83. string(0) ""
  84. [3]=>
  85. string(1) "b"
  86. }
  87. [2]=>
  88. array(5) {
  89. [0]=>
  90. string(2) "c3"
  91. ["chr"]=>
  92. string(1) "c"
  93. [1]=>
  94. string(1) "c"
  95. ["num"]=>
  96. string(1) "3"
  97. [2]=>
  98. string(1) "3"
  99. }
  100. }