Home > Backend Development > PHP Tutorial > PHP通过传引用的思想实现无限分类的方法

PHP通过传引用的思想实现无限分类的方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-20 12:46:59
Original
772 people have browsed it

在我的Simpla中,用到了无限分类,使用了PHP的传引用思想实现无限分类的方法,可以完美展示类似这样的分类模式。

具体实现代码如下:如有错误或者更好的方法,希望可以相互交流。

id   pid   name1    0     四川2    0     重庆3    1     成都4    1     绵阳5    3     高新区
Copy after login
/**     * 数组变成无限级分类--传引用思想     * @param array $items     * @return array     */    public static function get_tree($orig) {        //解决下标不是1开始的问题        $items = array();        foreach ($orig as $key => $value) {            $items[$value['id']] = $value;        }        //开始组装        $tree = array();        foreach ($items as $key => $item) {            if ($item['pid'] == 0) {  //为0,则为1级分类                $tree[] = &$items[$key];            } else {                if (isset($items[$item['pid']])) { //存在值则为二级分类                    $items[$item['pid']]['child'][] = &$items[$key];  //传引用直接赋值与改变                } else { //至少三级分类                    //由于是传引用思想,这里将不会有值                    $tree[] = &$items[$key];                }            }        }         return $tree;    }
Copy after login


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template