小编j6m*_*mes的帖子

PHP从列表构建递归数组

我从MySQL数据库返回一个页面列表及其父页面,并将所有结果放入一个数组中,如下所示,每个结果都是一个数组,其中包含论坛的父级,名称和ID(数组页面的键也是与页面ID相同).

为了模型和应用,还有一些其他参数.

  • "根页"的父级为0
  • 没有孤立的页面

所以,MySQL查询将返回此数据集.

pages=>
     [1] => array(id=>1, 
                  parent=>0, 
                  name=>Hello World)
     [2] => array(id=>1, 
                  parent=>1, 
                  name=>Child of Hello World)
     [3] => array(id=>1, 
                  parent=>0, 
                  name=>Brother of Hello World)
     [4] => array(id=>4, 
                  parent=>2, 
                  name=Grand-child of Hello World)
     [6] => array(id=>6, 
                  parent=>4, 
                  name=Great-grand-child of Hello World)
Run Code Online (Sandbox Code Playgroud)

然后我想将数组转换成看起来像这样的东西

pages=>
     [1] => id=>1, 
            name=>Hello World
            children=>

                [2] => id=>1
                       name=>Child of Hello World
                       children=>

                           [4] => 
                             id=>4
                             name=> Grand-child of Hello World)
                             children=>

                                 [6] => 
                                   id=>6
                                   name=> Great-grand-child of Hello World
                                   children= null

     [3] …
Run Code Online (Sandbox Code Playgroud)

php arrays recursion build multidimensional-array

2
推荐指数
2
解决办法
8886
查看次数

标签 统计

arrays ×1

build ×1

multidimensional-array ×1

php ×1

recursion ×1