我对php有关阵列的疑问。我有
Array
(
[0] => Array
(
[fieldset_name] => Personal Details
[field_name] => applicant_name
[field_label] => Your Name
[field_type] => text
[css_classes] => required
[minlength] => 4
[maxlength] => 10
[default_value] =>
[help_text] =>
)
现在我想输出就像一个html表单。在那个领域将是这样的:
<label for="applicant_name">Your Name</label><input type="text" maxlength="10" minlength="4" />
答案 0 :(得分:2)
基于@Michiel Pater的回答:
<?php
foreach($array as $element)
{
echo '<label for="' . $element['field_name'] . '"></label>' . $element['field_label'] . '<input name="' . $element['field_name'] . '" type="' . $element['field_type'] . '" maxlength="' . $element['maxlength'] . '" minlength="' . $element['minlength'] . '" class="' . $element['css_classes'] . '" /><br/>', "\n";
}
看起来你有一系列元素。这意味着您可以拥有1个或99个(或更多)元素。将代码放在foreach循环中意味着它们中的每一个都将被回显。
答案 1 :(得分:1)
您可以执行以下操作:
<?php
$html = '';
foreach($array as $e){
$html.= "<label for='{$e['field_name']}'>{$e['field_label']}</label>";
$html.= "<input type='{$e['field_type']}' ".
"maxlength='{$e['maxlength']}' minlength='{$e['minlength']}' ".
"class='{$e['css_classes']}' value='{$e['default_value']}' ".
"title='{$e['help_text']}' />";
}
echo $html;
?>
Basiclly只是循环遍历数组,并在正确的位置打印出元素。
答案 2 :(得分:0)
$count = count($field);
$finalString = "";
for($i = 0; $i < $count ; $i ++)
{
$finalString .= '<label for="' . $fields[$i]['field_name'] . '"></label>' . $fields[$i]['field_label'] . '<input name="' . $fields[$i]['field_name'] . '" type="' . $fields[$i]['field_type'] . '" maxlength="' . $fields[$i]['maxlength'] . '" minlength="' . $fields[$i]['minlength'] . '" class="' . $fields[$i]['css_classes'] . '" />';
}
echo $finalString;