English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
array_chunk()A função divide um array em menores pedaços de tamanho especificado. Dependendo do múltiplo do número total disponível no array, o último bloco pode conter menos elementos do que o tamanho passado.
array array_chunk ( array $input, int $size [, bool $preserve_keys] );
Número | Parâmetros e Descrições |
---|---|
1 | $input(obrigatório) Este é o array de entrada que queremos dividir em小块. Este é um parâmetro obrigatório. |
2 | $size(obrigatório) Queremos usar o $inputforma, define o tamanho de cada bloco a ser dividido do array passado. Este é um parâmetro obrigatório. |
3 | reserve_keys(opcional) Este é um parâmetro booleano opcional, mas quando definido comotrueQuando definido, preserva todas as chaves do array. Se não for passado, o valor padrão éfalseIsso reindexa os blocos de maneira numérica. |
A função PHP array_chunk() retorna um array multidimensional de índices numéricos de zero, onde cada dimensão contém size elementos.
A função original foi introduzida na versão4.2introduzido em .0.
Se passadosizemenor que1Se passadoE_WARNINGe retorna NULL.
Vamos tentar um exemplo simples, dividir um array em múltiplos pedaços, onde cada pedaço tem2de elementos-
<?php $input = array('abc', 'bcd', 'cde', 'def', 'efg'); print_r(array_chunk($input, 2)); ?>Teste e veja‹/›
Isso produzirá o seguinte resultado, observe os índices de cada subarray, todos três começam com zero-
Array ( [0] => Array ( [0] => abc [1] => bcd ) [1] => Array ( [0] => cde [1] => def ) [2] => Array ( [0] => efg ) )
Vamos tentar novamente o mesmo exemplo, mas desta vez vamos passar o parâmetropreserve_keysDefinido como true:
<?php $input = array('abc', 'bcd', 'cde', 'def', 'efg'); print_r(array_chunk($input, 2, true)); ?>Teste e veja‹/›
Isso produzirá o seguinte resultado, desta vez cada elemento preserva seu índice como se fosse o array original-
Array ( [0] => Array ( [0] => abc [1] => bcd ) [1] => Array ( [2] => cde [3] => def ) [2] => Array ( [4] => efg ) )
O exemplo a seguir passa o valor 0 para o parâmetro size, resultando em uma mensagem de aviso-
<?php //Especificar a divisão de um array de tamanho 0 lançará um erro $input = array('abc', 'bcd', 'cde', 'def', 'efg'); print_r(array_chunk($input, 0)); ?>Teste e veja‹/›
Resultados de Saída
PHP Avisos: array_chunk(): O parâmetro Size deve ser maior que 0 em main.php na linha 3