1--TEST-- 2Test array_chunk() function : usage variations - different 'size' values 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/* 12 * Testing array_chunk() function with following conditions 13 * 1. -ve size value 14 * 2. size value is more than the no. of elements in the input array 15 * 3. size value is zero 16 * 4. Decimal size value 17*/ 18 19echo "*** Testing array_chunk() : usage variations ***\n"; 20 21// input array 22$input_array = array(1, 2, 3); 23 24// different magnitude's 25$sizes = array(-1, count($input_array) + 1, 0, 1.5); 26 27// loop through the array for size argument 28foreach ($sizes as $size){ 29 echo "\n-- Testing array_chunk() when size = $size --\n"; 30 var_dump( array_chunk($input_array, $size) ); 31 var_dump( array_chunk($input_array, $size, true) ); 32 var_dump( array_chunk($input_array, $size, false) ); 33} 34echo "Done"; 35?> 36--EXPECTF-- 37*** Testing array_chunk() : usage variations *** 38 39-- Testing array_chunk() when size = -1 -- 40 41Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 42NULL 43 44Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 45NULL 46 47Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 48NULL 49 50-- Testing array_chunk() when size = 4 -- 51array(1) { 52 [0]=> 53 array(3) { 54 [0]=> 55 int(1) 56 [1]=> 57 int(2) 58 [2]=> 59 int(3) 60 } 61} 62array(1) { 63 [0]=> 64 array(3) { 65 [0]=> 66 int(1) 67 [1]=> 68 int(2) 69 [2]=> 70 int(3) 71 } 72} 73array(1) { 74 [0]=> 75 array(3) { 76 [0]=> 77 int(1) 78 [1]=> 79 int(2) 80 [2]=> 81 int(3) 82 } 83} 84 85-- Testing array_chunk() when size = 0 -- 86 87Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 88NULL 89 90Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 91NULL 92 93Warning: array_chunk(): Size parameter expected to be greater than 0 in %s on line %d 94NULL 95 96-- Testing array_chunk() when size = 1.5 -- 97array(3) { 98 [0]=> 99 array(1) { 100 [0]=> 101 int(1) 102 } 103 [1]=> 104 array(1) { 105 [0]=> 106 int(2) 107 } 108 [2]=> 109 array(1) { 110 [0]=> 111 int(3) 112 } 113} 114array(3) { 115 [0]=> 116 array(1) { 117 [0]=> 118 int(1) 119 } 120 [1]=> 121 array(1) { 122 [1]=> 123 int(2) 124 } 125 [2]=> 126 array(1) { 127 [2]=> 128 int(3) 129 } 130} 131array(3) { 132 [0]=> 133 array(1) { 134 [0]=> 135 int(1) 136 } 137 [1]=> 138 array(1) { 139 [0]=> 140 int(2) 141 } 142 [2]=> 143 array(1) { 144 [0]=> 145 int(3) 146 } 147} 148Done 149