Dans PHP, la fonction Array_Chunk est utilisée pour diviser un tableau en plusieurs tableaux plus petits. Habituellement, nous l'utilisons pour diviser un tableau d'index numérique. Cependant, lorsque nous gérons des tableaux associatifs, de nombreux développeurs ont des questions: la fonction Array_Chunk conservera-t-elle le nom de clé? La réponse à cette question est:.
Tout d'abord, passons rapidement en revue comment la fonction Array_Chunk est utilisée. L'utilisation de base de Array_Chunk est:
array_chunk(array $array, int $size, bool $preserve_keys = false): array
$ Array : le tableau d'origine qui doit être divisé.
$ Taille : la taille de chaque sous-réseau.
$ Preserve_Keys : s'il faut préserver le nom clé du tableau d'origine, par défaut en faux .
Si $ Preserve_Keys est défini sur true , Array_Chunk conservera les noms de clés du tableau d'origine. Si défini sur false (par défaut est faux ), le nom de clé est réindexé.
Utilisons quelques exemples en béton pour vérifier si le nom de clé sera conservé lorsque Array_Chunk est utilisé pour associer des tableaux.
$array = [
'a' => 'apple',
'b' => 'banana',
'c' => 'cherry',
'd' => 'date'
];
$result = array_chunk($array, 2);
print_r($result);
Le résultat de la sortie est:
Array
(
[0] => Array
(
[0] => apple
[1] => banana
)
[1] => Array
(
[0] => cherry
[1] => date
)
)
Vous pouvez voir que le nom de clé a été perdu et que la clé du résultat a été réindexée à partir de 0 .
$array = [
'a' => 'apple',
'b' => 'banana',
'c' => 'cherry',
'd' => 'date'
];
$result = array_chunk($array, 2, true);
print_r($result);
Le résultat de la sortie est:
Array
(
[0] => Array
(
[a] => apple
[b] => banana
)
[1] => Array
(
[c] => cherry
[d] => date
)
)
Dans cet exemple, le nom de clé est conservé et Array_chunk renvoie chaque sous-réseau avec le nom de clé d'origine.
array_chunk est utile pour diviser le tableau associatif, mais soyez conscient de son comportement: si vous souhaitez préserver le nom de clé d'origine, vous devez définir le troisième paramètre $ Preserve_Keys sur true . Sinon, les noms de clés seront réindexés, ce qui peut ne pas convenir à certains scénarios où vous devez conserver les noms de clés.
De plus, si vous n'avez pas besoin de conserver les noms de clés et de vous concentrer uniquement sur la division du contenu du tableau, le comportement par défaut est suffisant.
Array_chunk ne conserve pas les noms de clés par défaut et réindexera les clés des sous-réseaux.
Si vous devez préserver le nom de la clé, vous pouvez le faire en définissant le paramètre $ Preserve_Keys sur true .
Lorsque vous divisez le tableau associatif, Array_Chunk est entièrement applicable, mais il est nécessaire de décider de conserver le nom de clé en fonction de vos besoins.
Supposons que vous utilisiez une URL dans votre code, comme ceci:
$url = 'https://m66.net/page';
$parsed_url = parse_url($url);
print_r($parsed_url);