Gewusst wie: Entfernen eine Entität aus einem Array in PHP

November 30

Die PHP-Sprache bietet eine Standardfunktion keinen für das Entfernen eines Elements aus einem Array, ob das Array Datenwerte, Objekte oder jede andere Art von Entität enthält. Allerdings ist der Prozess eigentlich sehr einfach, mit anderen normalen PHP-Funktionen für den Umgang mit Arrays und Variablen. Sie verfügen über ein gewisses Maß an Wahl in Bezug auf, wie Sie gehen über die Array-Entität zu entfernen, aber der Gesamtprozess werden ungefähr die gleichen in den meisten Fällen.

Anweisungen

1 Bereiten Sie Ihr PHP-Skript mit dem Array drin. Die folgende Beispiel-Code-Übersicht erstellt und instanziiert ein Array mit Text-Strings gespeichert:

<? Php

$my_array = Array ("Apfel", "Banane", "Orange", "Traube");

? >

Dies ist ein triviales Beispiel veranschaulicht das Prinzip der Array-Elemente entfernen, aber können Sie jedem Array haben Sie bereits in Ihrem Skript.

2 Löschen Sie das Element, das Sie entfernen möchten. Je nach Ihrem eigenen Array Element-Positionen können eingesehen werden unter Verwendung der Standard-Ganzzahlschlüssel oder alternativ die Verwendung eines Indexes Zeichenfolge, wenn diese ist, wie Sie es erstellt. Um ein Element mithilfe des Ganzzahl-Schlüssels zu entfernen, verwenden Sie folgende Syntax, demonstriert das Element am Index ein Wesen mit der "nicht gesetzt"-Methode gelöscht:

ungesetzt Element 1

unset($my_array[1]);

Denken Sie daran, dass Array Ganzzahl Indizierung beginnt bei Null, so dass die Position eins der zweite Eintrag ist. Wenn Sie Zeichenfolge Indizierung für das Array verwenden, verwenden Sie die folgende Syntax, in der ein Element mit dem Schlüssel "Jim" entfernt ist:

ungesetzt Element Jim

unset($my_array['jim']);

Die Methode "nicht gesetzt" zerstört die Variable als Parameter angegeben.

3 Ihre Bestellung von Array zu sortieren. Je nach Ihrem eigenen Array müssen Sie es leicht auf Syntaxfehler verursacht durch das Löschen eines Elements zu vermeiden neu zu organisieren. Dies ist normalerweise notwendig für Arrays, die mit ganzzahligen Schlüsseln indiziert sind. Das gewünschte Element wurde gelöscht, aber die übrigen Array-Positionen und die Einträge bleiben gleich. Dies bedeutet, dass wenn Sie ungesetzt Arrayposition eins, der nächste Eintrag nach Position NULL werden position zwei, das ist nicht das, was Sie erwarten können. Um dies zu beheben, verwenden Sie den folgenden Code:

Schreiben Sie das Array mit den vorhandenen Werten

$my_array = array_values($my_array);

Dies wird ein Array mit aufeinanderfolgenden Ganzzahl Indizierung und keine Lücken führen.

4 Testen Sie das Ergebnis Ihrer Array entfernen, indem schreiben aus dem neuen Wert. PHP bietet Methoden zum Testen die Werte von Variablen zu bestimmten Zeitpunkten während der Ausführung, so dass Sie feststellen, ob Ihre Programme ausgeführt werden, wie erwartet. Verwenden Sie den folgenden Beispielcode zum Testen Ihrer Arraywerte und Indizes:

var_dump($my_array);

Ausgabe Ihres Arrays, jeder Index sowie der Entität oder Daten Wert an dieser Position gespeichert, sodass Sie auf einen Blick sehen können, ob Ihr Skript gearbeitet hat.

5 Speichern Sie Ihr PHP-Skript und auf Ihren Webserver hochladen. Wechseln Sie zu der entsprechenden Seite zum Testen und prüfen Sie, ob es tut, was Sie brauchen, es zu tun. Wenn Ihr Code nicht funktioniert wie erwartet, schauen Sie sich Ihre Syntax wieder, wobei besonderes Augenmerk auf den Index zu löschen.

Tipps & Warnungen

  • Eine alternative Methode zum Entfernen eines Arrayelements ist es mit der Methode "Array_splice" splice.
  • Wenn Sie das Array mithilfe der Methode "Array_values" normalisieren, haben nach der gelöschten Einträge neue Indizes.