循环到数组中以使用PHP构建select
我在PHP中创建了以下数组:循环到数组中以使用PHP构建select,php,arrays,Php,Arrays,我在PHP中创建了以下数组: $countries = array( array('CTY_Code' => 'AF', 'CTY_en' => 'Afghanistan', 'CTY_fr' => 'Afghanistan'), array('CTY_Code' => 'AL', 'CTY_en' => 'Albania', 'CTY_fr' => 'Albanie') ); 我如何循环到这一点,以进行如下选择: <select>
$countries = array(
array('CTY_Code' => 'AF', 'CTY_en' => 'Afghanistan', 'CTY_fr' => 'Afghanistan'),
array('CTY_Code' => 'AL', 'CTY_en' => 'Albania', 'CTY_fr' => 'Albanie')
);
我如何循环到这一点,以进行如下选择:
<select>
<option value='AF'>Afghanistan</option>
<option value='AL'>Albania</option>
</select>
$countries = array(
array('CTY_Code' => 'AF', 'CTY_en' => 'Afghanistan', 'CTY_fr' => 'Afghanistan'),
array('CTY_Code' => 'AL', 'CTY_en' => 'Albania', 'CTY_fr' => 'Albanie')
);
echo sprintf(
"<select>%s\n</select>",
implode("", array_map(function ($value) {
return sprintf("\n\t<option value=\"%s\">%s</option>", $value['CTY_Code'], $value['CTY_en']);
}, $countries))
);
我尝试的是:
<select>
<?
foreach($CTY_Code as $key => $CTY_en) {
echo '<option value="'.$CTY_Code.'">'.$CTY_en.'</option>';
}
?>
</select>
谢谢。试试:
foreach ($countries as $key => $value) {
echo '<option value="'.$value['CTY_Code'].'">'.$value['CTY_en'].'</option>';
}
你的阵列
$countries = array(
array('CTY_Code' => 'AF', 'CTY_en' => 'Afghanistan', 'CTY_fr' => 'Afghanistan'),
array('CTY_Code' => 'AL', 'CTY_en' => 'Albania', 'CTY_fr' => 'Albanie')
);
这是你的密码
echo "<select><option>--select country--</option>";
foreach ($countries as $countrykey => $countryvalue) {
echo "<option value=".$countryvalue['CTY_Code'].">".$countryvalue['CTY_en']."</option>";
}
echo "</select>";
在html中使用php的另一种方法
<select><option>--select option--</option>
<?php foreach ($countries as $countrykey => $countryvalue) { ?>
<option value="<?=$countryvalue['CTY_Code'];?>"><?=$countryvalue['CTY_en'];?></option>
<?php } ?>
</select>
试着这样做:
<select>
<option value='AF'>Afghanistan</option>
<option value='AL'>Albania</option>
</select>
$countries = array(
array('CTY_Code' => 'AF', 'CTY_en' => 'Afghanistan', 'CTY_fr' => 'Afghanistan'),
array('CTY_Code' => 'AL', 'CTY_en' => 'Albania', 'CTY_fr' => 'Albanie')
);
echo sprintf(
"<select>%s\n</select>",
implode("", array_map(function ($value) {
return sprintf("\n\t<option value=\"%s\">%s</option>", $value['CTY_Code'], $value['CTY_en']);
}, $countries))
);
这将给你:
<select>
<option value="AF">Afghanistan</option>
<option value="AL">Albania</option>
</select>
试试这个:foreach$countries为$arr{echo.$arr['CTY_en']。}你必须迭代$countries,而不是$CTY_代码,因为它根本不存在,然后从$arr的子数组中获取CTY_代码和CTY_en。我不明白为什么投票失败!问题清晰、格式良好、具体,显示了OP的努力