Maison >développement back-end >tutoriel php >Inversion des valeurs clés du tableau PHP : exploration de solutions efficaces

Inversion des valeurs clés du tableau PHP : exploration de solutions efficaces

王林
王林original
2024-05-01 15:00:031041parcourir

L'inversion clé-valeur d'un tableau peut être réalisée de plusieurs manières efficaces en PHP : utilisez la fonction array_flip() pour échanger directement des clés et des valeurs. Écrivez une fonction personnalisée pour combiner des valeurs et des clés dans un nouveau tableau à l'aide de array_combine(). Utilisez les fonctions de mappage array_map() et array_column() pour convertir les structures de tableaux et les recombiner. La comparaison des performances montre que la fonction array_flip() est la plus rapide dans les petits tableaux, tandis que les fonctions personnalisées et les fonctions de mappage présentent des avantages lorsque la taille du tableau est plus grande.

PHP 数组键值颠倒:高效方案探究

Inversion clé-valeur d'un tableau PHP : exploration efficace de solutions

L'inversion clé-valeur d'un tableau, c'est-à-dire l'échange des clés et des valeurs dans le tableau, est une opération courante en PHP. Cet article explorera plusieurs solutions efficaces et les démontrera à travers des cas pratiques.

Méthode 1 : fonction array_flip()

$array = ['name' => 'John Doe', 'age' => 30];
$flipped_array = array_flip($array);
print_r($flipped_array);

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)

Méthode 2 : fonction personnalisée

function flip_array($array) {
    return array_combine(array_values($array), array_keys($array));
}

$array = ['name' => 'John Doe', 'age' => 30];
$flipped_array = flip_array($array);
print_r($flipped_array);

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)

Méthode 3 : fonction de mappage

$array = ['name' => 'John Doe', 'age' => 30];
$flipped_array = array_map(function($key, $value) { return [$value, $key]; }, array_keys($array), array_values($array));
$flipped_array = array_combine(array_column($flipped_array, 0), array_column($flipped_array, 1));
print_r($flipped_array);

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)

Comparaison des performances

Lorsque la taille du tableau est petite, la fonction array_flip() est la plus rapide. Pour les tableaux plus grands, les fonctions personnalisées et les fonctions de mappage offrent de meilleures performances.

Cas pratique

L'inversion clé-valeur de tableau peut être utilisée dans divers scénarios, tels que :

  • Mappage de l'ID utilisateur au nom d'utilisateur
  • Mappage du code du pays au nom du pays
  • Créer un index inversé pour améliorer la vitesse de recherche

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