array_chunk_basic1.phpt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. --TEST--
  2. Test array_chunk() function : basic functionality - defualt 'preserve_keys'
  3. --FILE--
  4. <?php
  5. /* Prototype : array array_chunk(array $array, int $size [, bool $preserve_keys])
  6. * Description: Split array into chunks
  7. * Chunks an array into size large chunks.
  8. * Source code: ext/standard/array.c
  9. */
  10. echo "*** Testing array_chunk() : basic functionality ***\n";
  11. $size = 2;
  12. $input_arrays = array (
  13. // array with default keys - numeric values
  14. array(1, 2, 3, 4, 5),
  15. // array with default keys - string values
  16. array('value1', "value2", "value3"),
  17. // associative arrays - key as string
  18. array('key1' => 1, "key2" => 2, "key3" => 3),
  19. // associative arrays - key as numeric
  20. array(1 => 'one', 2 => "two", 3 => "three"),
  21. // array containing elements with/witout keys
  22. array(1 => 'one','two', 3 => 'three', 4, "five" => 5)
  23. );
  24. $count = 1;
  25. // loop through each element of the array for input
  26. foreach ($input_arrays as $input_array){
  27. echo "\n-- Iteration $count --\n";
  28. var_dump( array_chunk($input_array, $size) );
  29. $count++;
  30. }
  31. echo "Done"
  32. ?>
  33. --EXPECT--
  34. *** Testing array_chunk() : basic functionality ***
  35. -- Iteration 1 --
  36. array(3) {
  37. [0]=>
  38. array(2) {
  39. [0]=>
  40. int(1)
  41. [1]=>
  42. int(2)
  43. }
  44. [1]=>
  45. array(2) {
  46. [0]=>
  47. int(3)
  48. [1]=>
  49. int(4)
  50. }
  51. [2]=>
  52. array(1) {
  53. [0]=>
  54. int(5)
  55. }
  56. }
  57. -- Iteration 2 --
  58. array(2) {
  59. [0]=>
  60. array(2) {
  61. [0]=>
  62. string(6) "value1"
  63. [1]=>
  64. string(6) "value2"
  65. }
  66. [1]=>
  67. array(1) {
  68. [0]=>
  69. string(6) "value3"
  70. }
  71. }
  72. -- Iteration 3 --
  73. array(2) {
  74. [0]=>
  75. array(2) {
  76. [0]=>
  77. int(1)
  78. [1]=>
  79. int(2)
  80. }
  81. [1]=>
  82. array(1) {
  83. [0]=>
  84. int(3)
  85. }
  86. }
  87. -- Iteration 4 --
  88. array(2) {
  89. [0]=>
  90. array(2) {
  91. [0]=>
  92. string(3) "one"
  93. [1]=>
  94. string(3) "two"
  95. }
  96. [1]=>
  97. array(1) {
  98. [0]=>
  99. string(5) "three"
  100. }
  101. }
  102. -- Iteration 5 --
  103. array(3) {
  104. [0]=>
  105. array(2) {
  106. [0]=>
  107. string(3) "one"
  108. [1]=>
  109. string(3) "two"
  110. }
  111. [1]=>
  112. array(2) {
  113. [0]=>
  114. string(5) "three"
  115. [1]=>
  116. int(4)
  117. }
  118. [2]=>
  119. array(1) {
  120. [0]=>
  121. int(5)
  122. }
  123. }
  124. Done