Position actuelle: Accueil> Derniers articles> Utilisez Array_Values ​​pour nettoyer les clés non continues dans un tableau

Utilisez Array_Values ​​pour nettoyer les clés non continues dans un tableau

gitbox 2025-05-28

Qu'est-ce que la clé du tableau est discontinu?

Supposons que nous ayons un tableau:

 $array = [
    0 => 'pomme',
    1 => 'banane',
    3 => 'Tangerine',
    5 => 'Raisin'
];

Vous pouvez voir que les clés du tableau sont 0, 1, 3 et 5, et il y a une déconnexion au milieu. Si nous itons à travers ce tableau, bien que la valeur soit normale, si nous comptons sur des valeurs clés, des résultats inattendus peuvent être produits.


La fonction de la fonction array_values

La fonction de la fonction Array_Values ​​est de renvoyer toutes les valeurs dans le tableau et de réindexer ces valeurs. Les noms de clés seront incrémentés à partir de 0 pour garantir que les clés du tableau sont des nombres continus.

Exemple de syntaxe:

 array_values(array $array): array

La valeur de retour est un nouveau tableau contenant toutes les valeurs du tableau d'origine, mais le nom de clé est réindexé.


Exemple d'utilisation

Pour le tableau de clés discontinu ci-dessus, nous utilisons Array_values ​​pour traiter:

 <?php

$array = [
    0 => 'pomme',
    1 => 'banane',
    3 => 'Tangerine',
    5 => 'Raisin'
];

$cleanArray = array_values($array);

print_r($cleanArray);

Résultat de sortie:

 Array
(
    [0] => pomme
    [1] => banane
    [2] => Tangerine
    [3] => Raisin
)

Grâce à Array_Values , nous changeons avec succès les clés du tableau à 0, 1, 2 et 3 consécutives.


Quand avez-vous besoin d'utiliser array_values?

  • Lorsque vous supprimez des éléments au milieu du tableau via certaines opérations, les noms clés ne sont pas continus.

  • Il est nécessaire de réaliser une traversée d'index du tableau (comme pour les boucles), et les clés numériques continues sont plus pratiques.

  • Passez un tableau à une fonction ou une interface qui nécessite des touches numériques continues.

  • Les matrices non continues renvoyées par les requêtes de la base de données d'entrée ou de processus utilisateur doivent être nettoyées.


Combiné avec l'application dans les projets réels

Si vous retournez le tableau suivant via l'interface ou la requête de base de données (par exemple, le résultat obtenu par JSON_DECODE):

 <?php

$apiResponse = [
    2 => 'Tom',
    4 => 'Jerry',
    7 => 'Spike'
];

Vous devez le transformer en un tableau qui peut être traité directement:

 $cleaned = array_values($apiResponse);

foreach ($cleaned as $key => $name) {
    echo "numéro de série {$key},Nom:{$name}" . PHP_EOL;
}

Sortir:

 numéro de série 0,Nom:Tom
numéro de série 1,Nom:Jerry
numéro de série 2,Nom:Spike

résumé

  • Array_values ​​est un moyen facile et efficace de reconstruire les index de tableau dans PHP.

  • Applicable aux tableaux dont les noms de clés ne sont pas continus ou doivent être réinitialisés après leur supprimer.

  • Après avoir réindexé le tableau, il peut éviter beaucoup de complexité de traversée et de jugement logique.


Si vous voulez en savoir plus de compétences PHP, veuillez visiter:

 <a href="https://gitbox.net/php-array-functions">PHPFonctions de tableau</a>