Maison >développement back-end >tutoriel php >Comment réindexer les éléments d'un sous-tableau dans un tableau PHP multidimensionnel ?

Comment réindexer les éléments d'un sous-tableau dans un tableau PHP multidimensionnel ?

DDD
DDDoriginal
2024-11-05 07:47:01673parcourir

How to Re-index Subarray Elements in a Multidimensional PHP Array?

Réindexation des éléments de sous-tableau dans un tableau multidimensionnel

Réinitialiser les clés des sous-tableaux dans un tableau multidimensionnel peut être une tâche courante en PHP. Cet article aborde la question de savoir comment atteindre cet objectif.

Problème :

Considérez le tableau suivant :

<code class="php">Array (
    [1_Name] => Array (
        [1] => leo
        [4] => NULL
    )
    [1_Phone] => Array (
        [1] => 12345
        [4] => 434324
    )  
)</code>

La tâche est de réindexer les sous-tableaux comme suit :

<code class="php">Array (
    [1_Name] => Array (
        [0] => leo
        [1] => NULL
    )
    [1_Phone] => Array (
        [0] => 12345
        [1] => 434324
    )
)</code>

Solution :

Pour réinitialiser les clés de tous les tableaux d'un tableau, vous pouvez utiliser le code suivant :

<code class="php">$arr = array_map('array_values', $arr);</code>

Si vous souhaitez uniquement réinitialiser les clés du tableau de premier niveau, vous pouvez utiliser array_values() sans array_map :

<code class="php">$arr = array_values($arr);</code>

Explication :

La fonction array_map() applique une fonction définie par l'utilisateur à chaque élément d'un tableau. Dans ce cas, la fonction définie par l'utilisateur est array_values, qui renvoie un tableau avec les valeurs du tableau d'entrée. En appliquant array_values ​​à chaque sous-tableau du tableau d'origine, nous réinitialisons efficacement les clés de ces sous-tableaux.

La fonction array_values() renvoie un nouveau tableau qui contient les valeurs du tableau d'entrée. Lorsqu'il est utilisé sur un tableau multidimensionnel, il renvoie un tableau de tableaux, où chaque sous-tableau contient les valeurs du sous-tableau correspondant du tableau d'entrée. En attribuant le résultat de array_values() à la variable du tableau d'origine, nous réinitialisons effectivement les clés des sous-tableaux dans le tableau d'origine.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn