<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] ### 引用算法 由于眾所周知的原因,遞歸對資源的消耗是非常大的,實際執行起來效率也很低,所以有了下面的通過引用算法 ~~~ /** ?*?無限極分類(引用方式) ?*@param??array?$data需要分類的數組 ?*@return?array?返回一個已經無限極分類完成的數組 ?*/ function?getTree($data) { ????$items?=?array(); ???? ????//構建一個新的數組?新數組的key值是自己的主鍵id值(我這里表的主鍵是cat_id) ????//為何要構建這樣一個數組?這就是和下面第二個foreach有關了,看了代碼后就會明白何為巧妙引用了 ????foreach($data?as?$v) ????{ ????????$items[$v['cat_id']]?=?$v; ????} ????$tree?=?array(); ????//將數據進行無限極分類?? ????foreach($items?as?$key?=>?$val) ????{ ????????if(isset($items[$val['parent_id']])) ????????{ ????????????//關鍵是看這個判斷,是頂級分類就給$tree,不是的話繼續拼湊子分類(結合上述&用法) ????????????$items[?$val['parent_id']?]?['child']?[]?=?&$items[$key]; ????????} ????????else ????????{ ????????????$tree[]?=?&$items[$key]; ????????} ????} ????//返回無限極分類后的數據 ????return?$tree; } ~~~ 上面代碼中第一個foreach之后 $items數組變成如下結構: ~~~ array?(size=6) ??7?=>? ????array?(size=4) ??????'cat_id'?=>?int?7 ??????'cname'?=>?string?'php'?(length=3) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?80 ??6?=>? ????array?(size=4) ??????'cat_id'?=>?int?6 ??????'cname'?=>?string?'mysql'?(length=5) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?80 ??74?=>? ????array?(size=4) ??????'cat_id'?=>?int?74 ??????'cname'?=>?string?'Linux'?(length=5) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?80 ??80?=>? ????array?(size=4) ??????'cat_id'?=>?int?80 ??????'cname'?=>?string?'軟件開發'?(length=12) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ??87?=>? ????array?(size=4) ??????'cat_id'?=>?int?87 ??????'cname'?=>?string?'生活隨筆'?(length=12) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ??94?=>? ????array?(size=4) ??????'cat_id'?=>?int?94 ??????'cname'?=>?string?'鄰居'?(length=6) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ~~~ 第二個foreach之后 $tree數組變成如下結構: ~~~ array?(size=3) ??0?=>? ????array?(size=5) ??????'cat_id'?=>?int?80 ??????'cname'?=>?string?'軟件開發'?(length=12) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ??????'child'?=>? ????????array?(size=3) ??????????0?=>? ????????????array?(size=4) ??????????????'cat_id'?=>?int?7 ??????????????'cname'?=>?string?'php'?(length=3) ??????????????'is_show'?=>?int?1 ??????????????'parent_id'?=>?int?80 ??????????1?=>? ????????????array?(size=4) ??????????????'cat_id'?=>?int?6 ??????????????'cname'?=>?string?'mysql'?(length=5) ??????????????'is_show'?=>?int?1 ??????????????'parent_id'?=>?int?80 ??????????2?=>? ????????????array?(size=4) ??????????????'cat_id'?=>?int?74 ??????????????'cname'?=>?string?'Linux'?(length=5) ??????????????'is_show'?=>?int?1 ??????????????'parent_id'?=>?int?80 ??1?=>? ????array?(size=4) ??????'cat_id'?=>?int?87 ??????'cname'?=>?string?'生活隨筆'?(length=12) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ??2?=>? ????array?(size=4) ??????'cat_id'?=>?int?94 ??????'cname'?=>?string?'鄰居'?(length=6) ??????'is_show'?=>?int?1 ??????'parent_id'?=>?int?0 ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看