我用的某多用户商城系统,现在想把店铺一级大类下面的二级类循环出来,同时二级大类下面自动读取当前二级大类中的推荐店铺,请问该怎么写。如下图:
代码如下:
<div class="louceng">
<?php if(!empty($output['class_list']) && is_array($output['class_list'])){
$i = 0;
?>
<?php foreach($output['class_list'] as $k=>$v){
$i++;
?>
<div class="floor_area">
<?php if ($_GET['cate_id'] == $v['sc_parent_id']){
?>
<h2><?php echo $i;?>F <?php echo $v['sc_name'];?></h2>
<?php if(!empty($output['store_list']) && is_array($output['store_list'])){?>
<ul>
<?php foreach($output['store_list'] as $skey => $store){?>
<li><a href="<?php echo ncUrl(array('act'=>'show_store','id'=>$store['store_id']),'store',$store['store_domain']);?>" title="" target="_blank"><span class="thumb size72">
<img src="<?php echo SiteUrl.'/'.(ATTACH_PATH.DS.'ad'.DS.$store['shopad']);?>" onload="javascript:DrawImage(this,240,240);" /></span></a>
</li>
<?php }?>
</ul>
<div class="clear"></div>
<?php }?>
<?php }elseif (!isset($v['child']) && $output['class_list'][$_GET['cate_id']]['sc_parent_id'] == $v['sc_parent_id']){?>
<h2><?php echo $v['sc_name'];?></h2>
<?php }?>
</div>
<?php }?>
<?php }?>
</div>
另外<?php echo $i;?>为什么不是从1开始?
------解决方案--------------------
你的代码不能实现吗?贴出 $output 的内容
$i++; 在 foreach($output['class_list'] as $k=>$v){ 循环中无条件执行
echo $i; 在 if ($_GET['cate_id'] == $v['sc_parent_id']){ 分支中有条件执行
因为条件可能不成立,所以 echo $i;就可能不连续
既然 $i 表示一个顺号,那么就应该删除 9 行的 $i++;
而 14 行的 echo $i; 改为 echo ++$i;