Heim > Artikel > Backend-Entwicklung > php array_flip (ausführliche Erläuterung der Funktion zum Löschen doppelter Elemente aus dem Array)
In PHP gibt es eine verfügbare Funktion zum Löschen von doppelten Elementen im Array , nämlich array_unique(), Aber es ist nicht die effizienteste Methode. Die Verwendung der Funktion array_flip() ist etwa fünfmal schneller als array_uniqure().
Die Methode lautet wie folgt:
$arr = array(…………);//Angenommen, es gibt ein Array von 10.000 Elementen mit wiederholten Elementen.
$arr = array_flip(array_flip($arr)); //Dadurch werden doppelte Elemente entfernt.
Was zum Teufel ist da los? Werfen wir einen Blick auf die Rolle von array_flip(): array_flip() wird verwendet, um den Schlüssel und den Wert jedes Elements eines Arrays auszutauschen, wie zum Beispiel:
$arr1 = array ("age" => 30, " name" => ; "Happy Garden");
$arr2 = array_flip($arr1); //$arr2 is array(30 => "age", "Happy Garden" => "name");
In PHP-Arrays dürfen verschiedene Elemente denselben Wert annehmen, aber derselbe Schlüsselname darf nicht von verschiedenen Elementen verwendet werden, wie zum Beispiel:
$arr1 = array ("age" => 30, "name" = > "Happy Garden", "age" => 20 ersetzt "age" => 30
$arr1 = array ("name" => " Happy Garden" ", "age" =>
Hier sind $arr1 und $arr2 gleich.
So können wir wissen, warum array_flip(array_flip($arr)) doppelte Elemente im Array löschen kann. Erstens wird der Wert in $arr zu einem Schlüsselnamen, da der Wert wiederholt wird. Nachdem er zu einem Schlüsselnamen geworden ist, werden diese wiederholten Werte zu doppelten Schlüsselnamen. Die PHP-Engine löscht die doppelten Schlüsselnamen und behält nur den letzten eins. . Zum Beispiel:
$arr1 = array ("age" => 30, "name" => "Happy Park", "age" => 20); $arr1 wird array("Happy Garden" => "name", 20 => "age");//Stellen Sie den Schlüsselnamen und den Wert von $arr1 wieder her:
$ arr1 = array_flip($arr1 );
Der obige Code kann prägnanter geschrieben werden: $arr1 = array_flip(array_flip($arr1));
Das obige ist der detaillierte Inhalt vonphp array_flip (ausführliche Erläuterung der Funktion zum Löschen doppelter Elemente aus dem Array). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!