当前位置:Gxlcms > PHP教程 > php两层foreach循环如何给里层循环变量设置初始值=0

php两层foreach循环如何给里层循环变量设置初始值=0

时间:2021-07-01 10:21:17 帮助过:3人阅读

$question): ?>
$answer): ?>




如何在里层循环完之后 第二次里层循环时让$i的值从0开始,而不是接着上次循环的值继续


回复讨论(解决方案)

不明白你的意思,举例说明。或者说明一下你想怎样输出。

不明白你的意思,举例说明。或者说明一下你想怎样输出。


需求是这样的 一个问题下面好几个选项 问题跟选项是一对多的关系 我写了两个foreach循环 数据能读出来,
比如 问题1 下面选项是 1.选项a 2.选项b 问题2 下面选项是1.选项c 2.选项d 这里选项的题号 我想用$i来做,但是两个foreach之后 问题2的选项的题号是从3开始的

$question): ?>	        		
.
    $answer): ?>


不明白你的意思,举例说明。或者说明一下你想怎样输出。


需求是这样的 一个问题下面好几个选项 问题跟选项是一对多的关系 我写了两个foreach循环 数据能读出来,
比如 问题1 下面选项是 1.选项a 2.选项b 问题2 下面选项是1.选项c 2.选项d 这里选项的题号 我想用$i来做,但是两个foreach之后 问题2的选项的题号是从3开始的



';$questions = array(    '问题1',    '问题2',    '问题3');$answers = array(    array('选项a','选项b'),    array('选项c','选项d'),    array('选项e','选项f'));foreach($questions as $k=>$question){    echo 'Q'.($k+1).'
'; foreach($answers[$k] as $i=>$answer){ echo 'option'.($i+1).' '.$answer.'
'; } echo '
';}?>


Q1
option1 选项a
option2 选项b

Q2
option1 选项c
option2 选项d

Q3
option1 选项e
option2 选项f

#3 代码
第8行改为
第14行改为

内层每次都要遍历 $answers 数组,而只取少量数据
有点得不偿失,建议调整一下数据组织方式(参考#4)

当然也可以在主循环开始前先对 $answers 做聚类处理

人气教程排行