Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array entfernt Elemente basierend auf dem Wert

PHP-Array entfernt Elemente basierend auf dem Wert

WBOY
WBOYOriginal
2023-05-19 11:47:07418Durchsuche

Array ist eine häufig verwendete Datenstruktur in unserer Programmierkarriere und kann Daten problemlos speichern und verwalten. Es gibt jedoch Situationen, in denen wir bestimmte Elemente aus dem Array entfernen müssen. In diesem Artikel besprechen wir, wie man Elemente eines PHP-Arrays basierend auf dem Wert löscht.

PHP bietet viele verschiedene Array-Funktionen zum Bearbeiten von Arrays. Um Elemente aus einem Array zu löschen, können wir die von PHP bereitgestellte Funktion unset() verwenden. Die Aufgabe der Funktion unset() besteht darin, das Element mit dem angegebenen Schlüssel aus dem Array zu entfernen und ein neues Array zurückzugeben.

Schauen wir uns zunächst an, wie das Element mit dem angegebenen Schlüsselnamen im Array gelöscht wird. Das Folgende ist ein Beispielarray:

$cities = array("北京", "上海", "广州", "深圳");

Wir können die Funktion unset() verwenden, um Elemente mit angegebenen Schlüsselnamen zu löschen. Wenn wir beispielsweise das Element mit dem Schlüsselnamen 1 im Array $cities (z. B. Shanghai) löschen möchten, können wir Folgendes tun:

unset($cities[1]);

Im obigen Code verwenden wir die Funktion unset() zu löschen Das Element mit dem Schlüsselnamen 1 im $cities-Array. Nach der Ausführung des obigen Codes enthält das Array $cities das Shanghai-Element nicht mehr.

Wenn wir die Schlüsselreihenfolge anderer Elemente nach dem Löschen des Elements beibehalten möchten, können wir den folgenden Code verwenden:

$cities = array_values($cities);

Im obigen Code verwenden wir die Funktion array_values Gibt ein neues Array zurück und setzt die Array-Schlüssel zurück.

Wenn wir nun Elemente basierend auf ihrem Wert anstelle des Schlüsselnamens löschen möchten, wie machen wir das? Wir können die Funktion array_search() von PHP verwenden.

array_search() Funktion sucht, ob ein angegebener Wert in einem Array vorhanden ist und gibt den Schlüsselnamen des Werts im Array zurück. Wenn der Wert nicht vorhanden ist, wird „false“ zurückgegeben. Mit dieser Funktion können wir bestimmte Elemente aus dem Array löschen. Das Folgende ist ein Beispiel:

$cities = array("北京", "上海", "广州", "深圳");
$search_value = "上海";
$key = array_search($search_value, $cities);
if($key !== false) {
    unset($cities[$key]);
}

Im obigen Code verwenden wir zunächst die Funktion array_search(), um zu suchen, ob ein Element mit dem Wert „Shanghai“ im Array $cities vorhanden ist, und geben das zurück Schlüsselname des Elements. Wenn das Element vorhanden ist, verwenden Sie die Funktion unset(), um es aus dem Array zu entfernen.

Beachten Sie, dass wir im obigen Code den Gleichheitsoperator „!==" verwenden, der den Datentyp und den Wert zweier Werte vergleicht. Da die Funktion array_search() 0 zurückgeben kann, was als gültiger Schlüssel gilt, müssen wir sicherstellen, dass wir zum Vergleichen von Schlüsseln den Gleichheitsoperator verwenden.

Um es zusammenzufassen: Um in PHP Elemente basierend auf dem Wert zu löschen, müssen wir die Funktion array_search() verwenden, um einen bestimmten Wert im Array zu finden, und die Funktion unset() verwenden, um das Element zu löschen. Es ist zu beachten, dass wir nach dem Löschen von Elementen möglicherweise die Schlüsselreihenfolge des Arrays neu organisieren müssen, was mit der Funktion array_values() erreicht werden kann.

Das obige ist der detaillierte Inhalt vonPHP-Array entfernt Elemente basierend auf dem Wert. 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