Bei der Arbeit mit Formularen in HTML und PHP ist es manchmal wünschenswert, Eingabeelemente zu haben, die als Arrays in gespeichert sind die resultierenden POST-Daten. Dies zu erreichen kann jedoch eine Herausforderung sein, insbesondere wenn die Elemente dynamisch hinzugefügt werden.
Das Problem: Verschachtelte Elemente und Array-Struktur
Bedenken Sie das folgende Formular-Markup:
<form> <input type="text" name="levels[level]"> <input type="text" name="levels[build_time]"> <input type="text" name="levels[level]"> <input type="text" name="levels[build_time]"> </form>
Dieses Formular führt zu einem POST-Array mit verschachtelten Elementen, wie gezeigt unten:
Array ( [1] => Array ( [level] => 1 [build_time] => 123 ) [2] => Array ( [level] => 2 [build_time] => 456 ) )
Es wäre jedoch praktischer, eine Array-Struktur wie diese zu haben:
Array ( [0] => Array ( [level] => 1 [build_time] => 123 ) [1] => Array ( [level] => 2 [build_time] => 456 ) )
Die Lösung: Array-Syntax
Um diese Array-Struktur zu erreichen, fügen Sie einfach eckige Klammern [] am Ende der Namen der Eingabeelemente hinzu, z also:
<input type="text" name="levels[level][]"> <input type="text" name="levels[build_time][]">
Diese Modifikation ermöglicht es PHP, die Eingabeelemente als Array von Werten zu interpretieren. Wenn das Formular abgeschickt wird, erhalten Sie die gewünschte Array-Struktur.
Elemente dynamisch hinzufügen
Beachten Sie, dass Sie eine Schleife verwenden können, um diese Eingabeelemente dynamisch hinzuzufügen Es ist einfach, so viele Paare von „level“- und „build_time“-Elementen wie nötig hinzuzufügen.
Das obige ist der detaillierte Inhalt vonWie kann ich Arrays aus HTML/PHP-Formulareingaben erstellen und verwalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!