Position actuelle: Accueil> Derniers articles> Question d'entrevue: comment utiliser la fonction array_flip () dans PHP pour déterminer si la valeur d'un tableau est unique?

Question d'entrevue: comment utiliser la fonction array_flip () dans PHP pour déterminer si la valeur d'un tableau est unique?

M66 2025-06-03

Dans PHP, array_flip () est une fonction de tableau très pratique qui peut syndicat les clés et les valeurs dans un tableau. Cette fonctionnalité peut être intelligemment utilisée pour juger un tableau.

Fonction Introduction

 array array_flip(array $array)

Cette fonction renverra un nouveau tableau, transformant la clé dans le tableau d'origine en valeur et la valeur en une clé . Mais il convient de noter que s'il y a des valeurs en double dans le tableau d'origine, array_flip () écrasera la clé précédente et seule la dernière est conservée.

Par conséquent, nous pouvons juger s'il y a des valeurs en double en comparant les longueurs du réseau d'origine et du réseau inversé. Si les longueurs des deux sont incohérentes, cela signifie que les valeurs du tableau d'origine ne sont pas uniques.

Exemple de code

 function isArrayValuesUnique(array $arr): bool {
    $flipped = array_flip($arr);
    return count($arr) === count($flipped);
}

// Cas de test
$uniqueArray = ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'];
$nonUniqueArray = ['a' => 'apple', 'b' => 'banana', 'c' => 'apple'];

echo "Résultats des tests de tableau unique:";
echo isArrayValuesUnique($uniqueArray) ? 'C'est le seul' : 'Il y a des duplications';
echo "\n";

echo "非Résultats des tests de tableau unique:";
echo isArrayValuesUnique($nonUniqueArray) ? 'C'est le seul' : 'Il y a des duplications';

Sortir:

 Résultats des tests de tableau unique:C'est le seul
非Résultats des tests de tableau unique:Il y a des duplications

Exemples de scénarios d'application

Supposons que vous ayez un système d'enregistrement des utilisateurs et que vous devez déterminer si plusieurs champs entrés par l'utilisateur (tels que le courriel, le nom d'utilisateur) ont des valeurs en double. Vous pouvez utiliser cette méthode pour juger rapidement:

 $userInputs = [
    'email1' => 'user1@m66.net',
    'email2' => 'user2@m66.net',
    'email3' => 'user1@m66.net', // répéter
];

if (!isArrayValuesUnique($userInputs)) {
    echo "存在répéter的用户信息,Vérifiez, s'il vous plaît!";
} else {
    echo "Toutes les informations de l'utilisateur sont uniques,Continuer à traiter。";
}

Résumer

L'utilisation de Array_flip () pour déterminer si la valeur du tableau est unique est une technique concise et efficace. Son principe central réside dans le caractère unique des clés du tableau en PHP. Une fois que des valeurs répétées se produisent, ils seront automatiquement dédupliqués pendant le processus FLIP. Nous avons seulement besoin de comparer les longueurs.

Cette méthode convient pour juger le caractère unique d'un tableau unidimensionnel, et est une astuce qui mérite d'être maîtrisée dans les entretiens ou le développement réel.