您的位置:首页 > 编程语言 > PHP开发

Yii无限极分类2

2016-12-16 10:44 357 查看
控制器

public function actionIndex () {
header("content-type:text/html;charset=utf-8");
//实例化enterprise这个model层 调用sel_all方法
$data=new enterprise();
$data=$data->sel_all();
return $this->render('index',array('ar'=>$data));
}

Model层

public function sel_all(){
$arr = (new \yii\db\Query())
->select(['id', 'enterprise_name','fid'])
->from('enterprise')
->all();
//调用list_level方法
return self::list_level($arr,$pid=0,$level=0);
}
//递归遍历数据
public function list_level($arr,$pid=0,$level=0){
//定义一个静态数组
static $data = array();
foreach($arr as $k => $v){
if($v['fid'] == $pid){
$v['level'] = $level;
$data[] = $v;
$this->list_level($arr,$v['id'],$level+1);
}
}
return $data;
}

View层

<table border='1'>
<th>id</th>
<th>名称</th>
<?php foreach($ar as $k=>$v){?>
<tr>
<td><?php echo $v['id']?></td>
<!--str_repeat('字符串','重复的次数');重复一个字符串-->
<td><?php echo str_repeat('--',$v['level']);?><?php echo $v['enterprise_name']?></td>
</tr>
<?php }?>
</table>

效果展示:

id名称
1一级分类
8--二级分类
178----三级分类
179----三级分类
180----三级分类
181----三级分类
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: