国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

php - Bagaimana untuk merealisasikan output paparan klasifikasi tiga peringkat?
習(xí)慣沉默
習(xí)慣沉默 2017-05-17 09:55:55
0
4
949
數(shù)據(jù)庫(kù)文件xd_item:
id    pid     item         lead     ...
1       0     標(biāo)題名稱一  
2       0     標(biāo)題名稱二
3       1     中標(biāo)題名稱1-1
4       1     中標(biāo)題名稱1-2
5       2     中標(biāo)題名稱2-1
6       2     中標(biāo)題名稱2-2
8       3     小標(biāo)題名稱1-1-1
9       6     小標(biāo)題名稱2-2-1
10      6     小標(biāo)題名稱2-2-2
11      2     中標(biāo)題名稱2-3

---------------------
輸出效果:
序號(hào)     項(xiàng)目名稱
1       標(biāo)題名稱一      
1.1     中標(biāo)題名稱1-1
1.1.1   小標(biāo)題名稱1-1-1
1.2     中標(biāo)題名稱1-2
2       標(biāo)題名稱二
2.1     中標(biāo)題名稱2-1
2.2     中標(biāo)題名稱2-2
2.2.1   小標(biāo)題名稱2-2-1
2.2.2   小標(biāo)題名稱2-2-2
2.3     中標(biāo)題名稱2-3
============================
要在PHP實(shí)現(xiàn)這個(gè)輸出效果,要怎么實(shí)現(xiàn)呢? 
習(xí)慣沉默
習(xí)慣沉默

membalas semua(4)
左手右手慢動(dòng)作

Pertanyakan dahulu mereka yang pidnya 0, lalui mereka yang pidnya 0, tanya mereka yang pidnya ialah id item ini, dan kemudian keluarkan dalam gelung

洪濤

Jika ia adalah Oracle, anda boleh menggunakan fungsi level(), sys_connect_by_path() untuk melaksanakannya
Jika anda tidak menggunakan fungsi, anda boleh membina pandangan untuk melaksanakannya.

迷茫

Ini adalah rujukan kepada kaedah saya, yang menggunakan rekursi untuk melintasi Selagi ia berkaitan dengan struktur data, ada kaedah, ia hanya bergantung pada kecekapan

static public function toLevel($cate, $delimiter = '|——', $parent_id = 0, $level = 0) {

    $arr = array();
    foreach ($cate as $v) {
        if ($v['parent_id'] == $parent_id) {
            $v['type'] = $level + 1;
            $v['delimiter'] = str_repeat($delimiter, $level);
            $arr[] = $v;
            $arr = array_merge($arr, self::toLevel($cate, $delimiter, $v['cate_id'], $v['type']));
        }
    }

    return $arr;

}
phpcn_u1582

Soal data menggunakan panggilan fungsi yang pertama menyokong keperluan anda dengan sempurna, dan yang kedua ialah penyimpanan data secara rekursif

$arr = [
    0=>['id'=>1,'pid'=>0,'title'=>'標(biāo)題名稱一'],
    1=>['id'=>2,'pid'=>0,'title'=>'標(biāo)題名稱一'],
    2=>['id'=>3,'pid'=>1,'title'=>'標(biāo)題名稱一'],
     3=>['id'=>4,'pid'=>1,'title'=>'標(biāo)題名稱一'],
    4=>['id'=>5,'pid'=>2,'title'=>'標(biāo)題名稱一'],
    5=>['id'=>6,'pid'=>2,'title'=>'標(biāo)題名稱一'],
    6=>['id'=>7,'pid'=>3,'title'=>'標(biāo)題名稱一'],
    7=>['id'=>8,'pid'=>3,'title'=>'標(biāo)題名稱一'],
    8=>['id'=>9,'pid'=>6,'title'=>'標(biāo)題名稱一'],
    9=>['id'=>10,'pid'=>6,'title'=>'標(biāo)題名稱一'],
    10=>['id'=>11,'pid'=>2,'title'=>'標(biāo)題名稱一'],
];
$result = foreachd($arr,0);var_dump($result);
function foreachd($arr,$pid,$showpage = '') {
    $setpage = 1;
    $result = array();
    foreach($arr as $key=>$val) {
        if($val['pid'] == $pid) {
            $setshowpage = $showpage == '' ? $setpage : $showpage.'.'.$setpage;
            $arr[$key]['page'] = $setshowpage;
            $setpage++;
            $setarray = ['page'=>$setshowpage,'title'=>$val['title']];
            $result[] = $setarray;
            $result = array_merge($result,foreachd($arr,$val['id'],$setshowpage));
            
        }
    }
    return $result;
}
/*function foreachd($arr,$pid) {
    $return = array();
    foreach($arr as $val) {
        if($val['pid'] == $pid) {
            $return[$val['id']]['title'] = $val['title'];
            $childrendata = foreachd($arr,$val['id']);
            if($childrendata) {
                $return[$val['id']]['children'] = $childrendata;
            }
            
        }
    }
    return $return;
}*/
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan