array_chunk_variation4.phpt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. --TEST--
  2. Test array_chunk() function : usage variations - array with diff. sub 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 - input array containing different sub arrays
  12. */
  13. echo "*** Testing array_chunk() : usage variations ***\n";
  14. $size = 2;
  15. // input array
  16. $input_array = array (
  17. "array1" => array(),
  18. "array2" => array(1, 2, 3),
  19. "array3" => array(1)
  20. );
  21. echo "\n-- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' as defualt --\n";
  22. var_dump( array_chunk($input_array, $size) );
  23. echo "\n-- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' = true --\n";
  24. var_dump( array_chunk($input_array, $size, true) );
  25. echo "\n-- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' = false --\n";
  26. var_dump( array_chunk($input_array, $size, false) );
  27. echo "Done";
  28. ?>
  29. --EXPECTF--
  30. *** Testing array_chunk() : usage variations ***
  31. -- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' as defualt --
  32. array(2) {
  33. [0]=>
  34. array(2) {
  35. [0]=>
  36. array(0) {
  37. }
  38. [1]=>
  39. array(3) {
  40. [0]=>
  41. int(1)
  42. [1]=>
  43. int(2)
  44. [2]=>
  45. int(3)
  46. }
  47. }
  48. [1]=>
  49. array(1) {
  50. [0]=>
  51. array(1) {
  52. [0]=>
  53. int(1)
  54. }
  55. }
  56. }
  57. -- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' = true --
  58. array(2) {
  59. [0]=>
  60. array(2) {
  61. ["array1"]=>
  62. array(0) {
  63. }
  64. ["array2"]=>
  65. array(3) {
  66. [0]=>
  67. int(1)
  68. [1]=>
  69. int(2)
  70. [2]=>
  71. int(3)
  72. }
  73. }
  74. [1]=>
  75. array(1) {
  76. ["array3"]=>
  77. array(1) {
  78. [0]=>
  79. int(1)
  80. }
  81. }
  82. }
  83. -- Testing array_chunk() by supplying an array containing different sub arrays & 'preserve_key' = false --
  84. array(2) {
  85. [0]=>
  86. array(2) {
  87. [0]=>
  88. array(0) {
  89. }
  90. [1]=>
  91. array(3) {
  92. [0]=>
  93. int(1)
  94. [1]=>
  95. int(2)
  96. [2]=>
  97. int(3)
  98. }
  99. }
  100. [1]=>
  101. array(1) {
  102. [0]=>
  103. array(1) {
  104. [0]=>
  105. int(1)
  106. }
  107. }
  108. }
  109. Done