Heim >Backend-Entwicklung >PHP-Problem >PHP löscht einen bestimmten Wert aus dem Array

PHP löscht einen bestimmten Wert aus dem Array

WBOY
WBOYOriginal
2023-05-19 15:13:09572Durchsuche

In PHP ist das Löschen bestimmter Werte aus einem Array ein sehr häufiger Vorgang. Ein Array kann viele unnötige Elemente enthalten, und wir müssen das Array bereinigen und sauberer machen, indem wir sie entfernen. In diesem Artikel werden wir uns einige Methoden zum Löschen bestimmter Werte in PHP-Arrays ansehen und ihre Vor- und Nachteile diskutieren.

Methode 1: Verwenden Sie die Funktion unset().

Die Verwendung der Funktion unset() ist eine der einfachsten und direktesten Möglichkeiten, bestimmte Werte in einem Array zu löschen PHP. Diese Funktion akzeptiert einen Array-Schlüssel als Eingabe und löscht dann das angegebene Element.

Angenommen, wir haben ein Array $fruits:

$fruits = array("apple", "banana", "orange", "kiwi");

Wenn Sie „Banane“ im Array löschen möchten, müssen Sie nur die Funktion unset() verwenden : #🎜🎜 #

unset($fruits[1]);

In diesem Fall wird das $fruits-Array wie folgt aussehen:

array("apple", "orange", "kiwi");

Genau so haben wir das angegebene Element im $fruits-Array erfolgreich gelöscht. Ein wesentlicher Nachteil der Verwendung der Funktion unset() besteht jedoch darin, dass die neuen Array-Schlüssel nach dem Entfernen von Elementen nicht „neu nummeriert“ werden müssen, was zu Lücken in den Array-Schlüsseln führen kann.

Methode 2: Verwenden Sie die Funktion array_splice().

Die Funktion array_splice() ist auch eine der nützlichen Methoden zum Löschen bestimmter Werte in PHP-Arrays. Im Gegensatz zur Funktion unset() müssen die Array-Schlüssel nach dem Entfernen von Elementen neu angeordnet und nummeriert werden.

Angenommen, wir haben ein Array $fruits:

$fruits = array("apple", "banana", "orange", "kiwi");

Wenn Sie „Banane“ im Array löschen möchten, können Sie den folgenden Code verwenden: #🎜🎜 #
array_splice($fruits, 1, 1);
# 🎜🎜#Dadurch wird das zweite Element im $fruits-Array gelöscht und die Schlüssel der anderen Elemente an die vorherige Position verschoben, wodurch ein neues Array entsteht.

Diese Funktion erfordert drei Parameter. Der erste Parameter ist das Zielarray, der zweite Parameter ist der Index des ersten zu löschenden Elements und der dritte Parameter ist die Anzahl der zu löschenden Elemente. In diesem Fall ist das Element, das wir entfernen möchten, „Banane“ und sein Index ist 1, daher übergeben wir 1 als zweiten Parameter. Die Anzahl der zu entfernenden Elemente beträgt 1, daher übergeben wir 1 als dritten Parameter.

Ein Vorteil der Verwendung der Funktion array_splice() besteht darin, dass die Funktion das Array nach dem Entfernen von Elementen automatisch neu anordnet und nummeriert.

Methode 3: Verwenden Sie die Funktion array_filter()

Die Funktion array_filter() ermöglicht es uns, die Elemente des PHP-Arrays nach Bedingungen zu filtern und ein neues Array zurückzugeben. Wenn wir ein bestimmtes Element in einem Array löschen, können wir diese Funktion verwenden, um ein neues Array zurückzugeben, das das zu löschende Element nicht enthält.

Angenommen, wir haben ein Array $fruits:

$fruits = array("apple", "banana", "orange", "kiwi");

Wenn Sie „Banane“ im Array löschen möchten, können Sie den folgenden Code verwenden: #🎜🎜 #
$new_fruits = array_filter($fruits, function($fruit) {
    return $fruit !== 'banana';
});
# 🎜🎜#In diesem Beispiel verwenden wir die Funktion array_filter(), die ein Quellarray und eine Callback-Funktion akzeptiert. Mit der Callback-Funktion werden Bedingungen definiert, wobei die Bedingung darin besteht, Elemente gleich „Banane“ herauszufiltern.

Ein Vorteil der Verwendung der Funktion array_filter() besteht darin, dass sie ein neues Array erstellt, anstatt das ursprüngliche Array zu ändern. Dies trägt dazu bei, die Lesbarkeit und Wartbarkeit des Codes sicherzustellen.

Methode 4: Verwenden Sie die Funktion array_diff().

Die Funktion array_diff() wird in PHP verwendet, um zwei Arrays zu vergleichen und dann ein neues zurückzugeben, das nur unterschiedliche Elemente in einem Array enthält Array-Funktionen. Wenn wir ein bestimmtes Element in einem Array löschen, können wir die Funktion array_diff() verwenden und dabei das Array der zu löschenden Elemente als zweites Argument verwenden.

Angenommen, wir haben ein Array $fruits:

$fruits = array("apple", "banana", "orange", "kiwi");

Wenn Sie „Banane“ im Array löschen möchten, können Sie den folgenden Code verwenden: #🎜🎜 #
$new_fruits = array_diff($fruits, array('banana'));
# 🎜🎜#Hier übergeben wir das Quellarray $fruits und ein Array, das nur ein Element „Banane“ enthält, als Parameter an die Funktion array_diff(). Diese Funktion gibt ein neues Array zurück, das alle Elemente im Quellarray außer „Banane“ enthält.

Ein Vorteil der Verwendung der Funktion array_diff() besteht darin, dass sie ein neues Array erstellt, anstatt das ursprüngliche Array zu ändern. Dies trägt dazu bei, die Lesbarkeit und Wartbarkeit des Codes sicherzustellen.

Fazit

In diesem Artikel haben wir vier Methoden zum Entfernen bestimmter Werte aus PHP-Arrays vorgestellt, darunter die Verwendung von unset(), array_splice(), array_filter() und array_diff ()-Funktion. Für jede Methode diskutieren wir ihre Vor- und Nachteile und stellen Beispielcode bereit, damit die Leser ihre Verwendung und Auswirkungen besser verstehen können. Im Allgemeinen hängt die Wahl der Methode von bestimmten Szenarien und Anforderungen ab, und der Leser kann basierend auf seinen eigenen Anforderungen die Methode auswählen, die am besten zu ihm passt.

Das obige ist der detaillierte Inhalt vonPHP löscht einen bestimmten Wert aus dem 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
Vorheriger Artikel:PHP-Wagenrücklauf zum ArrayNächster Artikel:PHP-Wagenrücklauf zum Array