So entfernen Sie Subarrays aus einem Array in PHP

PHPz
Freigeben: 2023-04-20 15:18:12
Original
578 Leute haben es durchsucht

In PHP müssen wir manchmal ein Array aus einem anderen Array entfernen, was Array-Operationen erfordert. In diesem Artikel stellen wir einige Methoden zum Entfernen von Arrays aus einem Array vor.

1. Verwenden Sie die foreach-Schleife

Zuerst können wir die foreach-Schleife verwenden, um das Array zu durchlaufen, und dann die Funktion in_array verwenden, um zu bestimmen, ob das Array-Element im Zielarray erscheint. Wenn dies der Fall ist, verwenden Sie die Funktion unset Löschen Sie es aus dem Zielarray.

Beispielcode:

$arr1 = array('a', 'b', 'c', 'd');
$arr2 = array('a', 'e', 'f');
foreach ($arr2 as $value) {
    if (in_array($value, $arr1)) {
        unset($arr1[array_search($value, $arr1)]);
    }
}
print_r($arr1);
Nach dem Login kopieren

Der obige Code gibt ['b', 'c', 'd'] aus, d. h. die in $arr2 vorhandenen Elemente werden aus $arr1 entfernt.

2. Verwenden Sie die Funktion array_diff

Eine weitere Methode, die verwendet werden kann, ist die Funktion array_diff, die ein neues Array zurückgeben kann, das aus unterschiedlichen Werten in den beiden Arrays besteht. Daher können wir das Zielarray und das zu entfernende Array als zwei Parameter an die Funktion übergeben und nach dem Entfernen das neue Array erhalten.

Beispielcode:

$arr1 = array('a', 'b', 'c', 'd');
$arr2 = array('a', 'e', 'f');
$arr3 = array_diff($arr1, $arr2);
print_r($arr3);
Nach dem Login kopieren

Der obige Code gibt auch ['b', 'c', 'd'] aus, d. h. die in $arr2 vorhandenen Elemente werden aus $arr1 entfernt.

3. Verwenden Sie die Funktion array_filter

Die letzte Methode besteht darin, die Funktion array_filter zu verwenden, die eine Rückruffunktion zum Filtern von Array-Elementen verwenden kann. Mit der Rückruffunktion können wir die Elemente im Zielarray filtern, die mit den zu entfernenden Array-Elementen identisch sind, und nach dem Entfernen schließlich das neue Array erhalten.

Beispielcode:

$arr1 = array('a', 'b', 'c', 'd');
$arr2 = array('a', 'e', 'f');
$arr3 = array_filter($arr1, function($item) use($arr2) {
    return !in_array($item, $arr2);
});
print_r($arr3);
Nach dem Login kopieren

Der obige Code gibt auch ['b', 'c', 'd'] aus, d. h. die in $arr2 vorhandenen Elemente werden aus $arr1 entfernt.

Zusammenfassung

In diesem Artikel werden drei Methoden zum Entfernen von Arrays aus einem Array mithilfe der foreach-Schleife, der Funktion array_diff und der Funktion array_filter vorgestellt. In der tatsächlichen Entwicklung können wir je nach Situation die geeignete Methode auswählen.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie Subarrays aus einem Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage