私はこのように、多次元配列を取り、HTMLフォームフィールドに変換しようとしている:ここで多次元配列をHTMLフォームフィールドに変換する方法?
<input type="hidden" name="c_record[contact][0][name]" value="First Last">
<input type="hidden" name="c_record[contact][0][date_submitted][date]" value="2010-01-01">
<input type="hidden" name="c_record[contact][0][date_submitted][hour]" value="10">
<input type="hidden" name="c_record[contact][0][date_submitted][min]" value="08">
<input type="hidden" name="c_record[contact][0][date_submitted][sec]" value="16">
<input type="hidden" name="c_record[contact][0][ip_address]" value="192.168.1.1">
は、私がこれまで持っているものです。
$fields = array(
'c_record' => array(
'contact' => array(
0 => array(
'name' => 'First Last',
'date_submitted' => array(
'date' => '2010-01-01',
'hour' => '10',
'min' => '08',
'sec' => '16',
),
'ip_address' => '192.168.1.1',
),
),
),
);
$form_html = array_to_fields($fields);
function array_to_fields($fields, $prefix = '') {
$form_html = '';
foreach ($fields as $name => $value) {
if (! is_array($value)) {
if (! empty($prefix)) {
$name = $prefix . '[' . $name . ']';
}
// generate the hidden field
$form_html .= Form::hidden($name, $value) . EOL;
} else {
if (! empty($prefix)) {
$prefix .= '[' . $name . ']';
} else {
$prefix = $name;
}
$form_html .= array_to_fields($value, $prefix);
}
}
return $form_html;
}
これはIP_ADDRESSまで正常に動作し、ここでの結果:IP_addressはそれらに追加、前のフィールド名を持つ維持した後
<input type="hidden" name="c_record[contact][0][date_submitted][ip_address]" value="192.168.1.1">
し、任意の追加フィールド。
どうすればこの作品を作成できますか?
良いが、今だけ取得 'の'( '' c_record [連絡先]を欠落しています)。何か案は? –