Función PHP array_chunk ()

Definición y uso

los array_chunk() La función toma una matriz como entrada y divide esa matriz en trozos más pequeños de la size. El último fragmento puede contener menos elementos que los pasadossize basado en el factor de multiplicidad de los números totales disponibles en la matriz.

Sintaxis

array array_chunk ( array $input, int $size [, bool $preserve_keys] );

Parámetros

No Señor Descripción de parámetros
1

input (mandatory)

Esta es la matriz de entrada que queremos deslizar en trozos más pequeños. Este es un parámetro obligatorio.

2

size (mandatory)

El tamaño de cada fragmento que queremos dividir nuestra matriz pasada en forma de input. Este es nuevamente un parámetro obligatorio.

3

preserve_keys (optional)

Este es un parámetro opcional y booleano, pero cuando se establece en TRUE, se conservarán todas las claves de la matriz. Si no lo pasa, su valor predeterminado esFALSE que reindexará el fragmento numéricamente

Valores devueltos

La función PHP array_chunk () devuelve una matriz multidimensional indexada numéricamente, comenzando con cero, con cada dimensión que contiene elementos de tamaño.

Versión PHP

Esta función se introdujo por primera vez en la versión 4.2.0 de PHP.

Errores / Excepciones

Si pasa size es menor que 1, entonces E_WARNING se lanzará y se devolverá NULL.

Ejemplo

Probemos con un ejemplo simple para dividir nuestra matriz en múltiples partes de 2 elementos cada una:

<?php
   $input = array('abc', 'bcd', 'cde', 'def', 'efg');
   print_r(array_chunk($input, 2));
?>

Esto producirá el siguiente resultado, intente observar el índice de cada matriz más pequeña, comienza con cero para los tres fragmentos:

Array
(
    [0] => Array
        (
            [0] => abc
            [1] => bcd
        )

    [1] => Array
        (
            [0] => cde
            [1] => def
        )

    [2] => Array
        (
            [0] => efg
        )

)

Ejemplo

Probemos el mismo ejemplo una vez más, pero esta vez estableceremos el parámetro preserve_keys a la verdad -

<?php
   $input = array('abc', 'bcd', 'cde', 'def', 'efg');
   print_r(array_chunk($input, 2, true));
?>

Esto producirá el siguiente resultado, esta vez para cada elemento manteniendo su índice tal como está en la matriz original:

Array
(
    [0] => Array
        (
            [0] => abc
            [1] => bcd
        )

    [1] => Array
        (
            [2] => cde
            [3] => def
        )

    [2] => Array
        (
            [4] => efg
        )

)

Ejemplo

El siguiente ejemplo pasa el valor 0 para el parámetro de tamaño y, por lo tanto, arroja un mensaje de advertencia:

<?php
   $input = array('abc', 'bcd', 'cde', 'def', 'efg');
   print_r(array_chunk($input, 0));
?>

Esto producirá el siguiente resultado:

PHP Warning:  array_chunk(): Size parameter expected to be greater than 0 in main.php on line 3