我在同一个数组上迭代两次时遇到问题:
<? $indice=0 ?>
<?php foreach ($comisiones as $comision1):?>
<tr>
<td><?php echo ++$indice ?></td>
<td><?php echo tag('select',array('name'=>'comision_'.$indice),true)?>
<?php foreach ($comisiones as $comision2):?>
<option value="<?php echo $comision2->getId()?>">
<?php echo $comision2->getNombre()." - ".$comision2->getDescripcion()?>
</option>
<?php endforeach?>
</select>
</td>
</tr>
<?php endforeach?>
上面的代码打印:
我期待看到这样的东西(图像中组合的标签不一样,但我认为这个想法很清楚):
提前致谢
最佳答案
我的第一个建议是不要使用 foreach
循环。我相信 PHP 正在使用一些内部指针,因此两个 foreach
循环会影响彼此的位置。而是使用普通的 for 循环。
关于php - PHP 中的嵌套 foreach 产生与我预期不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2533249/