非递归方式实现无限分类思路:
1.数据设计:
id 主键 分类id
name 分类名称
pid 父id
path 路径 用于排序及判定该分类深度
2.读取数据库
$sql="SELECT id,name,CONCAT(path,'-',id) AS fullpath FROM category ORDER BY fullpath"
通过这样子选择就可以实现分类排序,非常方便实用。
3.前段显示:
用CI框架读取到的是一个对象数组,用foreach进行遍历。
$this->load->model('mfeilei'); $feilei=$this->mfeilei->get_category(); foreach($feilei as $row){ echo str_repeat(" ",count(explode('-',$row->fullpath))*2); echo $row->name; echo '<br />'; }