《PHP實戰:php 無限級分類 獲取頂級分類ID》要點:
本文介紹了PHP實戰:php 無限級分類 獲取頂級分類ID,希望對您有用。如果有疑問,可以聯系我們。
有這樣一個表,id是分類的ID,name是分類名稱,pid是上級分類的ID.PHP教程
現在有個分類ID,程序要找到它上級的上級的上級……分類的ID,簡單說就是找出頂級分類的ID.
比如“新鮮水果”的ID是13,對應父類ID是5,而5的父ID是1,1沒有父類,也就是頂級分類了.PHP教程
以前年輕氣盛不懂事,總想著用遞歸來查找,然后再將結果緩存來辦理性能問題.
后來又試過將整個表緩存起來,再遞歸查找.
再后來……似乎比較少有機會遇到無限級分類……PHP教程
最近有個同事問我怎么“優雅”的辦理這個問題.
于是我靈機一動,就有了如下辦理方案:PHP教程
<?php $sql = "select id, pid from tablename "; // 查詢后 將結果處理成 如下數組格式 $arr = [ // id => pid 1 => 0, // 省略... 5 => 1, // 省略... 13 => 5 ]; // 建議將這數組緩存起來 $id = 13; while($arr[$id]) { $id = $arr[$id]; } echo $id; // 1
不得不說:真是太優雅了!連我都佩服我本身了,同事更是五體投地,痛哭流涕.
因為他寫了幾十行循環再判斷再遞歸的代碼,被我用兩行代碼替換了……PHP教程
歡迎參與《PHP實戰:php 無限級分類 獲取頂級分類ID》討論,分享您的想法,維易PHP學院為您提供專業教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/7380.html