<?php
foreach($menu_names as $menu_name){
$i=0;
echo "<li><a href='?subj=" .$subjects_ids[$i]. " '>".$menu_name."</a></li>";
$i++;
}
?>
$subjects_ids
是一个包含三个1
,2
和3
值的数组。但是,此处在HTML中创建的链接仅包含所有三个?subj=3
的{{1}}。第一个$menu_name
应该有$menu_name
,第二个应该有subj=1
,第三个应该有2
。
答案 0 :(得分:2)
$i=0;
foreach($menu_names as $menu_name){
echo "<li><a href='?subj=" .$subjects_ids[$i]. " '>".$menu_name."</a></li>";
$i++;
}
将$i=0;
置于循环之外。
说明:
将$i
变量放在foreach循环中并将其值设置为0
时。每次数据循环时,$i
的值都将设置为$ i = 0;因此你应该把它放在foreach循环之外。
答案 1 :(得分:2)
您每次在循环中设置$ i = 0.
$i=0;
foreach($menu_names as $menu_name){
echo "<li><a href='?subj=" .$subjects_ids[$i]. " '>".$menu_name."</a></li>";
$i++;
}
是一种更好的方式。
答案 2 :(得分:1)
<?php
$i=0;
foreach($menu_names as $menu_name){
echo "<li><a href='?subj=" .$subjects_ids[$i]. " '>".$menu_name."</a></li>";
$i++;
}
?>
你已经在循环中初始化你的$ i变量,它应该在循环开始之前初始化,因此它的值保持不变并在所有标记中添加id 3
答案 3 :(得分:0)
您在每次迭代时初始化$ i var,因此它始终指向索引为0的元素。 只需删除
$i=0;