array_chunk_variation6.phpt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. --TEST--
  2. Test array_chunk() function : usage variations - different arrays
  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. /*
  11. * Testing array_chunk() function with following conditions
  12. * 1. array without elements
  13. * 2. associative array with duplicate keys
  14. * 3. array with one element
  15. */
  16. echo "*** Testing array_chunk() : usage variations ***\n";
  17. // input array
  18. $input_arrays = array (
  19. // array without elements
  20. "array1" => array(),
  21. // array with one element
  22. "array2" => array(1),
  23. // associative array with duplicate keys
  24. "array3" => array("a" => 1, "b" => 2, "c" => 3, "a" => 4, "d" => 5)
  25. );
  26. $size = 2;
  27. $count = 1;
  28. echo "\n-- Testing array_chunk() by supplying various arrays --\n";
  29. // loop through the array for 'array' argument
  30. foreach ($input_arrays as $input_array){
  31. echo "\n-- Iteration $count --\n";
  32. var_dump( array_chunk($input_array, $size) );
  33. var_dump( array_chunk($input_array, $size, true) );
  34. var_dump( array_chunk($input_array, $size, false) );
  35. $count++;
  36. }
  37. echo "Done";
  38. ?>
  39. --EXPECTF--
  40. *** Testing array_chunk() : usage variations ***
  41. -- Testing array_chunk() by supplying various arrays --
  42. -- Iteration 1 --
  43. array(0) {
  44. }
  45. array(0) {
  46. }
  47. array(0) {
  48. }
  49. -- Iteration 2 --
  50. array(1) {
  51. [0]=>
  52. array(1) {
  53. [0]=>
  54. int(1)
  55. }
  56. }
  57. array(1) {
  58. [0]=>
  59. array(1) {
  60. [0]=>
  61. int(1)
  62. }
  63. }
  64. array(1) {
  65. [0]=>
  66. array(1) {
  67. [0]=>
  68. int(1)
  69. }
  70. }
  71. -- Iteration 3 --
  72. array(2) {
  73. [0]=>
  74. array(2) {
  75. [0]=>
  76. int(4)
  77. [1]=>
  78. int(2)
  79. }
  80. [1]=>
  81. array(2) {
  82. [0]=>
  83. int(3)
  84. [1]=>
  85. int(5)
  86. }
  87. }
  88. array(2) {
  89. [0]=>
  90. array(2) {
  91. ["a"]=>
  92. int(4)
  93. ["b"]=>
  94. int(2)
  95. }
  96. [1]=>
  97. array(2) {
  98. ["c"]=>
  99. int(3)
  100. ["d"]=>
  101. int(5)
  102. }
  103. }
  104. array(2) {
  105. [0]=>
  106. array(2) {
  107. [0]=>
  108. int(4)
  109. [1]=>
  110. int(2)
  111. }
  112. [1]=>
  113. array(2) {
  114. [0]=>
  115. int(3)
  116. [1]=>
  117. int(5)
  118. }
  119. }
  120. Done