mysql - Soalan temu bual: Bagaimana untuk mencetak klasifikasi tiga peringkat PHP ke dalam jadual untuk paparan?
漂亮男人
漂亮男人 2017-05-16 13:01:50
0
6
720

1. Struktur kategori jadual klasifikasi pada asasnya terdiri daripada tiga medan utama: id, nama dan parent_id
2 Ia perlu dicetak dan dipaparkan dalam format jadual sedemikian

3. Bagaimanakah saya harus menulis kod php? (Membenarkan reka bentuk semula jadual pangkalan data)

漂亮男人
漂亮男人

membalas semua(6)
过去多啦不再A梦

Sudah set level 3, level 3 tu apa!?

select c1.name "一级分类", c2.name "二级分类", c3.name "三级分类"
from category c1
inner join category c2 on c1.id=c2.parent_id
inner join category c3 on c2.id=c3.parent_id
where c1.parent_id=0 #最高级;
Dengan cara ini anda boleh mendapatkan jam tangan yang anda inginkan.

世界只因有你

php reka bentuk pangkalan data klasifikasi tanpa had

左手右手慢动作

Pangkalan data terbahagi kepada tiga jadual: first_level, second_level, third_level

first_level: id, name;
second_level: id, parent_id, name    // second_level.parent_id = first_level.id
third_level: id, parent_id, name    // third_level.parent_id = second_level.id
大家讲道理

Mula-mula melintasi tatasusunan tahap 3 dan membuangnya ke dalam tatasusunan sub-item tahap 2, serupa dengan Infinitus yang terbalik

洪涛

Apa yang tuan mahukan ialah kod php
Malah, ia adalah masalah penyusunan semula Klasifikasi tahap kedua dan ketiga termasuk di bawah klasifikasi tahap pertama,

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

Menggunakan pertanyaan rekursif dalam SQL

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan