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