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);
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);
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);
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!