In PHP ist Array_flip () eine sehr praktische Array -Funktion, die Tasten und Werte in einem Array syndizieren kann. Diese Funktion kann geschickt verwendet werden, um ein Array zu beurteilen.
array array_flip(array $array)
Diese Funktion gibt ein neues Array zurück und verwandelt den Schlüssel im ursprünglichen Array in einen Wert und den Wert in einen Schlüssel . Es ist jedoch zu beachten, dass Array_flip () den vorherigen Schlüssel überschreibt und nur der letzte bleibt beibehalten, wenn es doppelte Werte gibt und nur der letzte beibehalten wird.
Daher können wir beurteilen, ob es doppelte Werte gibt, indem wir die Längen des ursprünglichen Arrays und des umgedrehten Arrays vergleichen. Wenn die Längen der beiden inkonsistent sind, bedeutet dies, dass die Werte im ursprünglichen Array nicht eindeutig sind.
function isArrayValuesUnique(array $arr): bool {
$flipped = array_flip($arr);
return count($arr) === count($flipped);
}
// Testfälle
$uniqueArray = ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'];
$nonUniqueArray = ['a' => 'apple', 'b' => 'banana', 'c' => 'apple'];
echo "Eindeutige Array -Testergebnisse:";
echo isArrayValuesUnique($uniqueArray) ? 'Es ist der einzige' : 'Es gibt Duplikationen';
echo "\n";
echo "非Eindeutige Array -Testergebnisse:";
echo isArrayValuesUnique($nonUniqueArray) ? 'Es ist der einzige' : 'Es gibt Duplikationen';
Eindeutige Array -Testergebnisse:Es ist der einzige
非Eindeutige Array -Testergebnisse:Es gibt Duplikationen
Angenommen, Sie haben ein Benutzerregistrierungssystem und müssen feststellen, ob mehrere vom Benutzer eingegebene Felder (z. B. E -Mail, Benutzername) doppelte Werte haben. Sie können diese Methode verwenden, um schnell zu beurteilen:
$userInputs = [
'email1' => 'user1@m66.net',
'email2' => 'user2@m66.net',
'email3' => 'user1@m66.net', // wiederholen
];
if (!isArrayValuesUnique($userInputs)) {
echo "存在wiederholen的用户信息,Bitte überprüfen!";
} else {
echo "Alle Benutzerinformationen sind eindeutig,Weiter verarbeiten。";
}
Die Verwendung von Array_flip (), um zu bestimmen, ob der Array -Wert eindeutig ist, ist eine kurze und effiziente Technik. Sein Kernprinzip liegt in der Einzigartigkeit von Arrayschlüssel in PHP. Sobald wiederholte Werte auftreten, werden sie während des Flip -Vorgangs automatisch dedupliziert. Wir müssen nur die Längen vergleichen.
Diese Methode eignet sich zur Beurteilung der Werteinheitlichkeit eines eindimensionalen Arrays und ist ein Tipp, der es wert ist, in Interviews oder der tatsächlichen Entwicklung zu beherrschen.