亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

php無限極分類的方法是什么

PHP
小億
88
2023-11-10 14:50:34
欄目: 編程語言

PHP無限極分類的方法有多種,下面是其中一種常見的方法:

  1. 使用遞歸函數: 首先,構建一個多維數組來表示分類的層級關系。每個分類包含一個id和parent_id,parent_id表示該分類的父級分類id。 然后,編寫一個遞歸函數來遍歷該多維數組,根據parent_id將子分類添加到對應的父分類下。可以使用一個空數組來存儲最終的無限極分類結果。

以下是一個示例代碼:

function buildTree($categories, $parent_id = 0) {
    $tree = array();
    
    foreach ($categories as $category) {
        if ($category['parent_id'] == $parent_id) {
            $children = buildTree($categories, $category['id']);
            if (!empty($children)) {
                $category['children'] = $children;
            }
            $tree[] = $category;
        }
    }
    
    return $tree;
}

使用示例:

$categories = array(
    array('id' => 1, 'name' => '分類1', 'parent_id' => 0),
    array('id' => 2, 'name' => '分類2', 'parent_id' => 0),
    array('id' => 3, 'name' => '分類3', 'parent_id' => 1),
    array('id' => 4, 'name' => '分類4', 'parent_id' => 1),
    array('id' => 5, 'name' => '分類5', 'parent_id' => 2),
    array('id' => 6, 'name' => '分類6', 'parent_id' => 3),
    array('id' => 7, 'name' => '分類7', 'parent_id' => 3),
);

$tree = buildTree($categories);
print_r($tree);

輸出結果:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => 分類1
            [parent_id] => 0
            [children] => Array
                (
                    [0] => Array
                        (
                            [id] => 3
                            [name] => 分類3
                            [parent_id] => 1
                            [children] => Array
                                (
                                    [0] => Array
                                        (
                                            [id] => 6
                                            [name] => 分類6
                                            [parent_id] => 3
                                        )
                                    [1] => Array
                                        (
                                            [id] => 7
                                            [name] => 分類7
                                            [parent_id] => 3
                                        )
                                )
                        )
                    [1] => Array
                        (
                            [id] => 4
                            [name] => 分類4
                            [parent_id] => 1
                        )
                )
        )
    [1] => Array
        (
            [id] => 2
            [name] => 分類2
            [parent_id] => 0
            [children] => Array
                (
                    [0] => Array
                        (
                            [id] => 5
                            [name] => 分類5
                            [parent_id] => 2
                        )
                )
        )
)

這樣就可以將多維數組按照層級關系轉換成無限極分類。

0
赤峰市| 民和| 中牟县| 公主岭市| 黔西| 瓦房店市| 灵山县| 河东区| 宾川县| 普洱| 郑州市| 焦作市| 习水县| 营山县| 云南省| 天祝| 卢氏县| 东明县| 常熟市| 克什克腾旗| 西乌珠穆沁旗| 唐河县| 迭部县| 西平县| 阿坝县| 乡城县| 长葛市| 聂荣县| 搜索| 柳河县| 拉萨市| 建昌县| 大安市| 中西区| 靖州| 偏关县| 四会市| 渝北区| 建瓯市| 丰县| 盐亭县|