Dans PHP, la fonction Array_Chunk est une fonction couramment utilisée qui est utilisée pour diviser un grand tableau en plusieurs petits tableaux. La syntaxe de base de cette fonction est la suivante:
array_chunk(array $array, int $size, bool $preserve_keys = false): array
$ Array : Le tableau à diviser.
$ Taille : la taille de chaque sous-réseau.
$ Preserve_keys : une valeur booléenne indiquant si la valeur clé du tableau d'origine est conservée.
Ici, les paramètres les plus couramment utilisés sont $ size et $ Preserve_keys . Cet article se concentrera sur l'explication de la fonction du paramètre $ Preserve_Keys et comment l'utiliser correctement.
La fonction Array_Chunk peut diviser un tableau en plusieurs petits tableaux, et la taille de chaque petit tableau est déterminée par la taille $ . Par défaut, le tableau divisé utilisera une nouvelle valeur de clé et sera renuméroté de 0. Si vous devez préserver la valeur clé du tableau d'origine, vous pouvez utiliser le paramètre Preserve_Keys pour y parvenir.
$ Preserve_Keys est un paramètre booléen. Par défaut, sa valeur est fausse , ce qui signifie que le sous-réseau partagé perdra la valeur clé du tableau d'origine et recommencera à partir de 0. Si $ Preserve_keys est défini sur true , la valeur clé du tableau d'origine sera conservée.
$array = [
10 => 'a',
20 => 'b',
30 => 'c',
40 => 'd',
50 => 'e',
];
$result = array_chunk($array, 2); // Les valeurs clés ne sont pas conservées par défaut
print_r($result);
Sortir:
Array
(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[0] => c
[1] => d
)
[2] => Array
(
[0] => e
)
)
Comme vous pouvez le voir, le tableau divisé réaffecte les valeurs clés de 0 à chaque sous-réseau.
$array = [
10 => 'a',
20 => 'b',
30 => 'c',
40 => 'd',
50 => 'e',
];
$result = array_chunk($array, 2, true); // installationpreserve_keyspourtrue,Réserver les valeurs clés
print_r($result);
Sortir:
Array
(
[0] => Array
(
[10] => a
[20] => b
)
[1] => Array
(
[30] => c
[40] => d
)
[2] => Array
(
[50] => e
)
)
À l'heure actuelle, le sous-réseau divisé conserve la valeur clé du tableau d'origine.
Lorsque vous utilisez le paramètre Preserve_Keys , il vous suffit de le définir sur true lors de l'appel Array_Chunk pour préserver la valeur clé du tableau d'origine. Par exemple, supposons que vous ayez un tableau où les valeurs clés ont un sens et que vous souhaitez conserver ces valeurs clés, vous pouvez le faire:
$array = [
0 => 'apple',
1 => 'banana',
2 => 'cherry',
3 => 'date',
];
$chunks = array_chunk($array, 2, true);
foreach ($chunks as $chunk) {
foreach ($chunk as $key => $value) {
echo "Key: $key, Value: $value\n";
}
}
Sortir:
Key: 0, Value: apple
Key: 1, Value: banana
Key: 2, Value: cherry
Key: 3, Value: date
Comme vous pouvez le voir, le tableau divisé conserve toujours la valeur clé du tableau d'origine.
Grâce au paramètre Preserve_Keys de la fonction Array_Chunk , nous pouvons facilement contrôler s'il faut conserver la valeur clé du tableau d'origine. Par défaut, les valeurs de clés sont perdues et renumérotées par 0; Mais si vous voulez conserver les valeurs de clé d'origine, définissez simplement Preserve_Keys sur true .
Ceci est très utile pour les scénarios où les valeurs clés doivent être conservées, comme le maintien de la structure et de la relation clé-valeur du tableau d'origine lors de la division de certaines valeurs d'index ou d'association des tableaux.
Avis: