配列としての HTML フォーム入力
提供されたフォームはレベルの配列をキャプチャすることを目的としており、各レベルはタイトルとビルドで構成されます時間。目的の出力は、提供された例に示すように、タイトルとビルド時間で表される各レベルの配列です。
推奨される解決策:
目的の出力を実現するには、入力名を少し変更します:
<input type="text" class="form-control" placeholder="Titel" name="levels[level][]"> <input type="text" class="form-control" placeholder="Titel" name="levels[build_time][]">
名前の最後に角括弧を追加すると、入力を処理する必要があることが PHP に指示されます。配列として。その後、フォームの送信時に、PHP は「levels」という名前の配列に「level」と「build_time」のサブ配列を自動的に設定します。
動的要素の使用:
Ifフォーム要素は動的に追加されるため、ループを使用するとプロセスを簡素化できます。次のコード スニペットは、適切な配列名を持つ動的入力要素を追加する方法を示しています。
for ($i = 0; $i < $numLevels; $i++) { echo '<input type="text" class="form-control" placeholder="Titel" name="levels[level][]">'; echo '<input type="text" class="form-control" placeholder="Titel" name="levels[build_time][]">'; }
このメソッドを使用すると、PHP は手動でインデックスを作成することなく、入力を自動的に配列構造に編成します。
追加メモ:
編集した HTML で、「level」を囲んでいる元の中括弧を削除し、入力名に「build_time」が含まれています。これにより、「level」配列と「build_time」配列の各インデックスが同じレベルに対応する配列構造になります。
以上がHTML フォーム入力をレベルの配列として処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。