获取数据后如何排成这种形式!
但是这个肯定错了,但是不知道怎么去写啊,逻辑好乱,有大神帮忙吗?分不多,就一个意思!
我写错的:
<?php foreach($catelist as $k=>$v){?> //循环大分类
<div class="catemenu">
<div class="cname"><?php echo $v['cate_name'];?></div>
<ul>
<?php
foreach($catlist as $kk=>$vv){ //循环小分类
if ($vv['parentid']==$v['cate_id']){ //判断小分类的父分类
?>
<li>
<a href="<?php echo $vv['url'];?>"><?php echo $vv['cate_name'];?></a>
<div class="clr"></div>
</li>
<?php } } ?>
</ul>
</div>
<?php }?>
<div class="catemenu">
<a href=""><div class="cname"><img src="1.png" />酒店宾馆</div></a>
<ul>
<li>
<a href="">新安东阁</a>
<a href="">七经街店</a>
<a href="">锦山大街店</a>
<a href="">江城大街店</a>
<div class="clr"></div>
</li>
<li>
<a href="1">皇冠假日</a>
<a href="">汉庭步行街</a>
<a href="">月光百合</a>
<a href="">万家酒店</a>
<div class="clr"></div>
</li>
<li>
<a href="">凯日达宾馆</a>
<a href="">艺海宾馆</a>
<a href="">荣汇酒店</a>
<a href="">龙苑温泉</a>
<div class="clr"></div>
</li>
<li>
<a href="">汉庭站前店</a>
<a href="">7天连锁</a>
<a href="">子木屋日租</a>
<a href="">假日阳光</a>
<div class="clr"></div>
</li>
<li>
<a href="">中联酒店</a>
<a href="">高尔夫会所</a>
<a href="">尚客优快捷</a>
<a href="">莱弗仕酒店</a>
<div class="clr"></div>
</li>
<li>
<a href="">长城宾馆</a>
<a href="">丽兹卡尔森</a>
<a href="">虎跃酒店</a>
<a href="">阿里郎宾馆</a>
<div class="clr"></div>
</li>
<li>
<a href="">皇家凯旋</a>
<a href="">董姐旅馆</a>
</ul>
</div>
<div class="catemenu">
<a href=""><div class="cname"><img src="2.png" />便民工具</div></a>
<ul>
<li>
<a href="">火车余票</a>
<a href="">航班查询</a>
<a href="">快递查询</a>
<a href="">艺龙酒店预定</a>
<div class="clr"></div>
</li>
<li>
<a href="">彩票开奖</a>
<a href="">下厨房</a>
<a href="">爱星座</a>
<a href="">医药在线资讯</a>
<div class="clr"></div>
</li>
<li>
<a href="">塔罗占卜</a>
</ul>
</div>
foreach($data as $key=>$value){
if($value['pid'] == 0){//顶级大分类
$i = 1;
echo "<div class='catemenu'>";
echo "<div class='cname'>";
echo $value['name'] . "</div>";
echo "<ul><li>";
foreach($data as $k=>$v){
if($value['id'] == $v['pid']){
if($i % 5 == 0){
echo "<div class='clr'></div></li><li>";
}
echo "<a>" . $v['name'] . "</a>";
$i++;
}
}
if($i % 5 != 0){
echo "<div class='clr'></div></li>";
}
echo "</ul></div>";
}
}
难道不是将小分类聚集在相应的大分类下吗?
似你这样组织数据,循环小分类不是要做很多无效劳动吗?
第一步
foreach($catlist as $kk=>$vv){ //循环小分类
$vv['cate_name'] = "<a href='$vv[url]'>$vv[cate_name</a>";
$new_catlist[$vv['parentid']][] = $vv; //按大分类聚类
}
foreach($catelist as $k=>$v){ //循环大分类为清晰起见,简化了代码
//输出大分类数据
$t = $new_catlis[$v['cate_id']]; //取回自己的小分类数据
$t = array_chunk($t, 4); //按4个一组切开
echo '<ul>';
foreach($t as $x) {
echo '<li>' . join('', $x) . '</li>';
}
echo '</ul>';
//输出大分类剩余数据
}