PHP | array_chunk() Function

09 Aug, 2019
The array_chunk() function is an inbuilt function in PHP which is used to split an array into parts or chunks of given size depending upon the parameters passed to the function. The last chunk may contain fewer elements than the desired size of the chunk.
Syntax:
array array_chunk( $array, $size, $preserve_keys )

Parameters: This function accepts three parameters as shown in the above syntax. The parameters are described below:
$array: This parameter represents the array that is needed to be divided into chunks.
$size: This parameter is an integer which defines the size of the chunks to be created.
$preserve_keys: This parameter takes Boolean value. When this parameter is set to TRUE then the keys are preserved, otherwise the chunk is reindexed starting from 0.
Return value: This function returns a multidimensional array indexed starting from 0. Each chunk contains $size number of elements, except the last chunk which may contain lesser number of elements.
Examples:
Input : $input_array = array('a', 'b', 'c', 'd', 'e');
        array_chunk($input_array, 2);
Output : Array(
                [0] => Array
                (
                    [0] => a
                    [1] => b
                )
                [1] => Array
                (
                    [0] => c
                    [1] => d
                )
                [2] => Array
                (
                    [0] => e
                )
            )

Input : $input_array = array('a', 'b', 'c', 'd', 'e');
       array_chunk($input_array, 2, true)
Output :    Array
            (
                [0] => Array
                (
                    [0] => a
                    [1] => b
                )
                [1] => Array
                (
                    [2] => c
                    [3] => d
                )
                [2] => Array
                (
                    [4] => e
                )
            )   

In the first example a multidimensional array is returned in which each chunk contains 2 elements. In the second example, since the third argument is passed as true therefore the index of elements in each chunk is the same as their index in the original array from which the chunk is created. In this case, each chunk contains 2 elements which are the value of size passed to the function.
Below programs illustrate the array_chunk() function in PHP:
Program 1:
<?php  $input_array = array('a', 'b', 'c', 'd', 'e');  print_r(array_chunk($input_array, 2));  ?>
Output:
Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )
    [1] => Array
        (
            [0] => c
            [1] => d
        )
    [2] => Array
        (
            [0] => e
        )
)
Program 2:
<?php  $input_array = array('a', 'b', 'c', 'd', 'e');  print_r(array_chunk($input_array, 2, true));  ?>
Output:
Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )
    [1] => Array
        (
            [2] => c
            [3] => d
        )
    [2] => Array
        (
            [4] => e
        )
)
Reference: http://php.net/manual/en/function.array-chunk.php
PHP-array
PHP-function
PHP
Web Technologies
PHP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to execute PHP code using command line ?
PHP in_array() Function
How to delete an array element based on key in PHP?
How to Insert Form Data into Database using PHP ?
How to convert array to string in PHP ?
Installation of Node.js on Linux
Top 10 Projects For Beginners To Practice HTML and CSS Skills
Difference between var, let and const keywords in JavaScript
How to insert spaces/tabs in text using HTML/CSS?
How to fetch data from an API in ReactJS ?