Heim  >  Artikel  >  Backend-Entwicklung  >  Wie entferne ich redundante Elemente aus dem PHP-Array?

Wie entferne ich redundante Elemente aus dem PHP-Array?

coldplay.xixi
coldplay.xixiOriginal
2020-07-22 10:36:243194Durchsuche

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.

Wie entferne ich redundante Elemente aus dem PHP-Array?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

In Verbindung stehende Artikel

Mehr sehen