上代码

<?php

$rows = array(
  array(
    'id' => 1,
    'name' => 'dev',
    'parentid' => 0
  ),

  array(
    'id' => 2,
    'name' => 'php',
    'parentid' => 1
  ),

  array(
    'id' => 3,
    'name' => 'thinkphp',
    'parentid' => 2

  ),
  array(
    'id' => 4,
    'name' => 'life',
    'parentid' => 0
  ),

  array(
    'id' => 5,
    'name' => 'pdo',
    'parentid' => 2
  ),

  array(
    'id' => 6,
    'name' => 'pdo-mysql',
    'parentid' => 5
  ),

  array(
    'id' => 7,
    'name' => 'java',
    'parentid' => 1
  )
);


$tree=build_tree($arr,0);
print_r($tree);


function build_tree($rows,$root_id){
  $childs=findChild($rows,$root_id);
  if(empty($childs)){
    return null;
  }
  foreach ($childs as $k => $v){
    $rescurTree=build_tree($rows,$v['id']);
    if( null !=  $rescurTree){ 
      $childs[$k]['childs']=$rescurTree;
    }
  }
  return $childs;
}


function findChild($arr,$id){
  $childs=array();
   foreach ($arr as $k => $v){
     if($v['parentid']== $id){
       $childs[]=$v;
     }
  }
  return $childs;
}


?>

Last modification:March 31st, 2020 at 11:12 am
如果觉得我的文章对你有用,请随意赞赏