Heim >Backend-Entwicklung >PHP-Tutorial >Wie erstellt und verarbeitet man Array-Eingaben in HTML/PHP-Formularen?
Eingabe als Array in HTML/PHP-Formularen
Beim Erstellen von Formularen in HTML, die Benutzereingaben empfangen, gibt es Fälle, in denen Sie dies möglicherweise möchten Sammeln Sie Daten in einer Array-Struktur. In diesem Artikel wird erläutert, wie Sie dies mithilfe von PHP-Eingabenamen erreichen.
Szenario:
Stellen Sie sich ein Formular vor, das mehrere Paare von Eingabefeldern enthält, wobei jedes Paar aus einer Ebene besteht und build_time. Die gewünschte Ausgabe ist ein Array, bei dem jedes Paar als Subarray gespeichert wird und wie folgt aussieht:
Array ( [1] => Array ( [level] => 1 [build_time] => 123 ) [2] => Array ( [level] => 2 [build_time] => 456 ) )
Erster Ansatz:
Anfänglich verwendete das Formular statische Feldnamen , wie zum Beispiel name="levels[level]", was zur folgenden Ausgabe führte:
[levels] => Array ( [0] => Array ( [level] => 1 ) [1] => Array ( [build_time] => 234 ) [2] => Array ( [level] => 2 ) [3] => Array ( [build_time] => 456 ) )
Korrigiert Ansatz:
Um das gewünschte Ausgabeformat zu erhalten, sollten die eckigen Klammern am Ende der Eingabenamen hinzugefügt werden, wie unten gezeigt:
<input type="text" class="form-control" placeholder="Titel" name="levels[level][]"> <input type="text" class="form-control" placeholder="Titel" name="levels[build_time][]">
Mit diesem überarbeiteten Ansatz PHP gruppiert die Eingabewerte basierend auf dem Vorhandensein der eckigen Klammern in Unterarrays. Die resultierende Array-Struktur stimmt mit dem erwarteten Format überein.
Dynamisches Hinzufügen von Eingabefeldern:
Dieser korrigierte Ansatz ermöglicht das dynamische Hinzufügen von Eingabefeldern, sodass keine Angabe erforderlich ist Indizes innerhalb der Formularelemente. PHP ordnet sie automatisch als Unterarrays an und bietet so eine bequeme und flexible Möglichkeit, Daten zu sammeln.
Verwendung:
Um die einzelnen Werte abzurufen, verwenden Sie einfach die PHP-Array-Syntax:
echo $levels["level"][5]; // Retrieves the 6th level echo $levels["build_time"][5]; // Retrieves the corresponding build time
Das obige ist der detaillierte Inhalt vonWie erstellt und verarbeitet man Array-Eingaben in HTML/PHP-Formularen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!