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

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP數組轉樹結構以及樹結構轉數組的示例

發布時間:2021-02-24 10:03:57 來源:億速云 閱讀:187 作者:清風 欄目:編程語言

本文將為大家詳細介紹“PHP數組轉樹結構以及樹結構轉數組的示例”,內容步驟清晰詳細,細節處理妥當,而小編每天都會更新不同的知識點,希望這篇“PHP數組轉樹結構以及樹結構轉數組的示例”能夠給你意想不到的收獲,請大家跟著小編的思路慢慢深入,具體內容如下,一起去收獲新知識吧。

php有什么用

php是一個嵌套的縮寫名稱,指的是英文超級文本預處理語言(php:Hypertext Preprocessor)的縮寫,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。

public function index()
    {
        $data = [
            [
                'id'=>1,
                'parent_id' => 0,
                'name' => '第一個'
            ],

            [
                'id'=>2,
                'parent_id' => 0,
                'name' => '第二個'
            ],

            [
                'id'=>3,
                'parent_id' => 1,
                'name' => '第三個'
            ],

        ];
        $r = $this->list_to_tree($data);
        dump($r);
    }

PHP數組轉樹結構以及樹結構轉數組的示例

#數組轉樹結構#

function list_to_tree($list, $root = 0, $pk = 'id', $pid = 'parent_id', $child = 'children'){
    // 創建Tree
    $tree = array();
    if (is_array($list)) {
        // 創建基于主鍵的數組引用
        $refer = array();
        foreach ($list as $key => $data) {
            $refer[$data[$pk]] = &$list[$key];
        }
        foreach ($list as $key => $data) {
            // 判斷是否存在parent
            $parentId = 0;
            if (isset($data[$pid])) {
                $parentId = $data[$pid];
            }
            if ((string)$root == $parentId) {
                $tree[] = &$list[$key];
            } else {
                if (isset($refer[$parentId])) {
                    $parent = &$refer[$parentId];
                    $parent[$child][] = &$list[$key];
                }
            }
        }
    }
    return $tree;}

#樹結構轉數組#

function tree_to_list($tree = [], $children = 'children'){
    if (empty($tree) || !is_array($tree)) {
        return $tree;
    }
    $arrRes = [];
    foreach ($tree as $k => $v) {
        $arrTmp = $v;
        unset($arrTmp[$children]);
        $arrRes[] = $arrTmp;
        if (!empty($v[$children])) {
            $arrTmp = tree_to_list($v[$children]);
            $arrRes = array_merge($arrRes, $arrTmp);
        }
    }
    return $arrRes;}

如果你能讀到這里,小編希望你對“PHP數組轉樹結構以及樹結構轉數組的示例”這一關鍵問題有了從實踐層面最深刻的體會,具體使用情況還需要大家自己動手實踐使用過才能領會,如果想閱讀更多相關內容的文章,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潮安县| 和林格尔县| 兴海县| 马公市| 文登市| 贵港市| 田东县| 盐亭县| 平果县| 金溪县| 河南省| 嫩江县| 白银市| 三江| 肥东县| 疏附县| 遂昌县| 都江堰市| 黑河市| 无棣县| 佛冈县| 定西市| 应用必备| 永康市| 浮山县| 莱西市| 理塘县| 雷山县| 岑溪市| 长寿区| 东兰县| 赤壁市| 崇义县| 泽州县| 石林| 绵竹市| 临沂市| 双江| 荆门市| 双辽市| 靖西县|