我试图设置一个简单的下拉菜单,回声对应于通过$_GET提交的选项值数组的值。
我不明白如何使用一个if结构在多维数组中使用变量。我可以很容易地输入尽可能多的if结构,因为我需要,但必须有一种方法,通过$_GET['selectname'][$n]
我做错了什么?
$animal = array("cat", "dog", "fish", "bear");
//generates dropdown menu of animals with option value of 1-4
echo "<form method="GET"><select name="animaltype">";
for($n = 0; $n < 4; $n++)
{
echo "<option value="$n">$animal[$n]</option>";
}
echo "</select><input type="submit"></form>";
//use variables in multidimensional array to use one if construct instead of many
if(isset($_GET['animaltype'][$n]))
{
echo $animal[$n];
}
如果你想显示被选择的动物,你可以这样做:
if(isset($_GET['animaltype']))
{
echo $animal[$_GET['animaltype']];
}
$_GET['animaltype']
不是数组,它是包含所选选项值的字符串。