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

王林
Libérer: 2024-05-01 15:00:03
original
1013 Les gens l'ont consulté

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);
Copier après la connexion

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)
Copier après la connexion
Copier après la connexion
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)
Copier après la connexion
Copier après la connexion
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
    [John Doe] => name
    [30] => age
)
Copier après la connexion
Copier après la connexion
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal