php网站开发中使用递归的例子有哪些?能否提供实例代码。谢谢

解决方案 »

  1.   

    无限分类
    copy 来的代码 <?php
    $rows = array(
        array(
            'id' => 1,
            'name' => 'dev',
            'parentid' => 0
        ),
        array(
            'id' => 2,
            'name' => 'php',
            'parentid' => 1
        ),
        array(
            'id' => 3,
            'name' => 'smarty',
            '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
        )
    );function findChild(&$arr,$id){
      
        $childs=array();
         foreach ($arr as $k => $v){
             if($v['parentid']== $id){
                  $childs[]=$v;
             }
        }
        return $childs;
    }
    function build_tree($root_id){
        global $rows;
        $childs=findChild($rows,$root_id);
        if(empty($childs)){
            return null;
        }
       foreach ($childs as $k => $v){
           $rescurTree=build_tree($v[id]);
           if( null !=   $rescurTree){ 
           $childs[$k]['childs']=$rescurTree;
           }
       }
        return $childs;
    }$tree=build_tree(0);
    echo memory_get_usage();
    print_r($tree);?>