En PHP, nous devons généralement diviser un grand tableau avec plusieurs éléments en plusieurs petits tableaux pour un fonctionnement et une gestion plus efficaces. Cet article présentera plusieurs méthodes courantes pour diviser les tableaux pour vous aider à les utiliser de manière flexible dans le développement.
PHP offre une fonction très pratique - array_chunk () , qui peut diviser un grand tableau en plusieurs petits tableaux. Cette fonction accepte deux paramètres: le premier paramètre est le tableau à diviser, et le deuxième paramètre est le nombre d'éléments contenus dans chaque tableau de division.
Voici un exemple utilisant la fonction array_chunk () :
$ bigarray = array ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'); $ smallarrays = array_chunk ($ bigarray, 3); print_r ($ smallarrays);
Résultat de sortie:
Tableau ( [0] => tableau ( [0] => A [1] => b [2] => c ) [1] => tableau ( [0] => D [1] => e [2] => f ) [2] => tableau ( [0] => g [1] => h ) )
Dans cet exemple, nous avons divisé un tableau de 8 éléments en 3 petits tableaux, chaque petit tableau contenant jusqu'à 3 éléments.
En plus de la fonction array_chunk () , vous pouvez également utiliser la fonction array_slice () pour diviser le tableau. Cette fonction reçoit trois paramètres: le premier est le tableau à diviser, le second est la position de départ de la division, et le troisième est le nombre d'éléments à diviser.
Voici un exemple utilisant la fonction array_slice () :
$ bigarray = array ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'); $ SmallArrays = Array ( array_slice ($ bigarray, 0, 3), array_slice ($ bigarray, 3, 3), array_slice ($ bigarray, 6, 2) )); print_r ($ smallarrays);
Résultat de sortie:
Tableau ( [0] => tableau ( [0] => A [1] => b [2] => c ) [1] => tableau ( [0] => D [1] => e [2] => f ) [2] => tableau ( [0] => g [1] => h ) )
Dans cet exemple, nous avons divisé le tableau en plusieurs petits tableaux en spécifiant différentes positions de début et longueurs de division.
Enfin, vous pouvez également utiliser une combinaison de boucles et de fonction array_splice () pour diviser flexiblement les tableaux. Cette méthode convient particulièrement aux scénarios où les tableaux doivent être divisés à plusieurs reprises par une taille spécifiée.
Voici un exemple utilisant la fonction Array_Splice () et la boucle:
$ bigarray = array ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'); $ chunksize = 3; $ smallarrays = array (); while (count ($ bigarray)> 0) { $ smallarrays [] = array_splice ($ bigarray, 0, $ chunkSize); } print_r ($ smallarrays);
Résultat de sortie:
Tableau ( [0] => tableau ( [0] => A [1] => b [2] => c ) [1] => tableau ( [0] => D [1] => e [2] => f ) [2] => tableau ( [0] => g [1] => h ) )
Dans cet exemple, l'utilisation d'une boucle combinée avec la fonction array_splice () supprime en continu les éléments du tableau d'origine et les enregistre dans un nouveau petit tableau jusqu'à ce que le tableau d'origine soit vide.
En utilisant Array_Chunk () , Array_Slice () et Array_Slice () , vous pouvez diviser de gros tableaux de gros tableaux en PHP en plusieurs petits tableaux. Ces méthodes ont leurs propres caractéristiques et peuvent être choisies en fonction de vos besoins réels. Lorsque vous divisez un tableau, assurez-vous de définir raisonnablement le nombre d'éléments par petit tableau pour éviter de diviser les résultats qui ne répondent pas aux attentes.