Heim > Artikel > Backend-Entwicklung > Wie entferne ich redundante Elemente aus dem PHP-Array?
So entfernen Sie redundante Elemente aus PHP-Arrays: 1. Um ein Element in den Daten zu löschen, können Sie die Methode [unset()] und die Methode [array_splice()] verwenden. 2. Um mehrere Elemente zu löschen Im Array können Sie die Methoden [array_diff()] und [array_diff_key()] verwenden.
So entfernen Sie redundante Elemente aus PHP-Arrays:
1. Löschen Sie ein Element in den Daten
Wenn Sie ein Element aus dem Array löschen möchten, können Sie die Methode unset() oder array_splice() verwenden.
Wenn Sie den Wert eines Array-Elements, aber nicht den Schlüssel kennen, können Sie array_search() verwenden, um den Schlüssel abzurufen.
1. Unset()-Methode
Beachten Sie, dass bei Verwendung der unset()-Methode andere Schlüssel nicht geändert werden. Um die Schlüssel neu zu sortieren, können Sie array_values() verwenden.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); unset($array[1]); //↑ 你要删除的数组元素值的键 print_r($array); ?>
Ausgabeergebnis:
Array ( [0] => a [2] => c )
2. array_splice()-Methode
Wenn Sie die array_splice()-Methode verwenden, werden die Schlüssel des Arrays angezeigt Die Indizierung wird automatisch wiederhergestellt, funktioniert aber nicht für assoziative Arrays, erfordert array_values(), um die Schlüssel in numerische Schlüssel umzuwandeln.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); array_splice($array, 1, 1); //↑ Offset which you want to delete print_r($array); ?>
Ausgabeergebnis:
Array ( [0] => a [1] => c )
array_splice() hat die gleiche Wirkung wie die Funktion unset() beim Freigeben der angegebenen Elemente des Arrays.
2. Mehrere Elemente im Array löschen
Wenn Sie mehrere Elemente im Array löschen möchten, können Sie die Funktion unset() oder array_splice() nicht verwenden. , müssen Sie die Methode array_diff() oder array_diff_key() verwenden, was die Kenntnis des zu löschenden Schlüssels oder Werts erfordert.
1. array_diff()-Methode
Wenn Sie das Array-Element kennen, das Sie löschen möchten, können Sie array_diff() verwenden.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); $array = array_diff($array, ["a", "c"]); //└────────┘→你要删除的元素 print_r($array ); ?>
Das Ausgabeergebnis ist:
Array ( [1] => b )
2. array_diff_key()-Methode
Wenn Sie den Schlüssel des zu löschenden Array-Elements kennen, Sie können array_diff_key() verwenden. Sie müssen den zu löschenden Schlüssel an der Schlüsselwertposition des zweiten Parameters der Funktion eingeben. Der Wert ist nicht erforderlich und kann optional sein.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); $array = array_diff_key($array, [0 => "xy", "2" => "xy"]); //↑ ↑ 你要删除的数组键 print_r($array); ?>
Das Ausgabeergebnis ist:
Array ( [1] => b )
Verwandte Lernempfehlungen: PHP-Programmierung vom Einstieg bis zur Kompetenz
Das obige ist der detaillierte Inhalt vonWie entferne ich redundante Elemente aus dem PHP-Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!