Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
循环到数组中以使用PHP构建select_Php_Arrays - Fatal编程技术网

循环到数组中以使用PHP构建select

循环到数组中以使用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>

我在PHP中创建了以下数组:

$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的努力