zoukankan      html  css  js  c++  java
  • 通过引用实现php无限极分类

    /**
    * 递归加引用实现无限极分类
    * @param $items
    * @return array
    */
    public function getTree2($items)
    {
       $array = [];
        foreach ($items as $item)
        {
         if(isset($items[$item['pid']]))//拿到pid
           {//放到里面
           $items[$item['pid']]['son'][] = &$items[$item['id']];
             }else {
           $array[] = &$items[$item['id']];
           }
       }
    return $array;
    }

    $array = array(
    array('id' => 1, 'pid' => 0, 'name' => '河北省'),
    array('id' => 2, 'pid' => 0, 'name' => '北京市'),
    array('id' => 3, 'pid' => 1, 'name' => '邯郸市'),
    array('id' => 4, 'pid' => 2, 'name' => '朝阳区'),
    array('id' => 5, 'pid' => 2, 'name' => '通州区'),
    array('id' => 6, 'pid' => 4, 'name' => '望京'),
    array('id' => 7, 'pid' => 4, 'name' => '酒仙桥'),
    array('id' => 8, 'pid' => 3, 'name' => '永年区'),
    array('id' => 9, 'pid' => 1, 'name' => '武安市'),
    );

    Array
    (
    [1] => Array
    (
    [id] => 1
    [pid] => 0
    [name] => 河北省
    [children] => Array
    (
    [0] => Array
    (
    [id] => 3
    [pid] => 1
    [name] => 邯郸市
    [children] => Array
    (
    [0] => Array
    (
    [id] => 8
    [pid] => 3
    [name] => 永年区
    )

    )

    )

    [1] => Array
    (
    [id] => 9
    [pid] => 1
    [name] => 武安市
    )

    )

    )

    [2] => Array
    (
    [id] => 2
    [pid] => 0
    [name] => 北京市
    [children] => Array
    (
    [0] => Array
    (
    [id] => 4
    [pid] => 2
    [name] => 朝阳区
    [children] => Array
    (
    [0] => Array
    (
    [id] => 6
    [pid] => 4
    [name] => 望京
    )

    [1] => Array
    (
    [id] => 7
    [pid] => 4
    [name] => 酒仙桥
    )

    )

    )

    [1] => Array
    (
    [id] => 5
    [pid] => 2
    [name] => 通州区
    )

    )

    )

    )

  • 相关阅读:
    Mysql 5.7解压版安装
    Java Web 整合案例
    maven 创建Java web项目
    LintCode 数字三角形
    Hibernate 泛型Dao实现
    LintCode 将二叉查找树转换成双链表
    LintCode 删除链表中倒数第n个节点
    LintCode 二级制中有多少个1
    LintCode翻转二叉树
    SpringMVC 运行流程
  • 原文地址:https://www.cnblogs.com/zlf2000/p/12747336.html
Copyright © 2011-2022 走看看