数组无限分类树模型序列化
Posted firebirdweb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组无限分类树模型序列化相关的知识,希望对你有一定的参考价值。
<?php $array = array( array(‘id‘=>‘1‘, ‘name‘=>‘电子产品‘, ‘parent_id‘=>0), array(‘id‘=>‘2‘, ‘name‘=>‘电脑‘, ‘parent_id‘=>1), array(‘id‘=>‘3‘, ‘name‘=>‘笔记本‘, ‘parent_id‘=>2), array(‘id‘=>‘4‘, ‘name‘=>‘台式电脑‘, ‘parent_id‘=>2), array(‘id‘=>‘5‘, ‘name‘=>‘食物‘, ‘parent_id‘=>0), array(‘id‘=>‘6‘, ‘name‘=>‘蔬菜‘, ‘parent_id‘=>5), array(‘id‘=>‘7‘, ‘name‘=>‘白菜‘, ‘parent_id‘=>6), array(‘id‘=>‘8‘, ‘name‘=>‘萝卜‘, ‘parent_id‘=>6), ); class TreeCate function __construct ($data) $this->data = $data; $this->array = array(); public function getTree($parent_id = 0) $tree = []; if (count($this->data) > 0) foreach ($this->data as $key => $value) //删除已经序列过的数组 unset($this->data[$key]); if ($value[‘parent_id‘] == $parent_id) $children = $this->getTree($value[‘id‘]); if (!empty($children)) //生成子树模型,因为用了递归,从最后一层返回生成 $value[‘children‘] = $children; $tree[] = $value; return $tree; $tree_cates = new TreeCate($array); $cates = $tree_cates->getTree(); print_r($cates);
这里只是生成了树模型数组,具体调用!
以上是关于数组无限分类树模型序列化的主要内容,如果未能解决你的问题,请参考以下文章