array_chunk()
array_chunk() — Split an array into chunks.
Built-in function of PHP 8.5. The manual lists it as available in PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
What it does
Chunks an array into arrays with length elements. The last chunk may contain less than length elements.
Signature
array_chunk(array $array, int $length, bool $preserve_keys = false): array
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $array | array | The array to work on |
| $length | int | The size of each chunk |
| $preserve_keys | bool | When set to true keys will be preserved. Default is false which will reindex the chunk numerically |
Return value
Returns a multidimensional numerically indexed array, starting with zero, with each dimension containing length elements.
Example
A runnable snippet:
$input_array = array('a', 'b', 'c', 'd', 'e'); print_r(array_chunk($input_array, 2)); print_r(array_chunk($input_array, 2, true));
Output:
Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) ) Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [2] => c [3] => d ) [2] => Array ( [4] => e ) )
Changelog
| Version | Change |
|---|---|
| 8.0.0 | If length is less than 1, a ValueError will be thrown now; previously, an error of level E_WARNING has been raised instead, and the function returned null. |
See also
All PHP 8.5 built-in functions
Reference card built from the PHP manual page array_chunk() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.