PHP如何通過傳引用的思想實(shí)現(xiàn)無限分類(代碼簡(jiǎn)單)
無限級(jí)分類,主要是通過儲(chǔ)存上級(jí)分類的id以及分類路徑來實(shí)現(xiàn)
在我的Simpla中,用到了無限分類,使用了PHP的傳引用思想實(shí)現(xiàn)無限分類的方法,可以完美展示類似這樣的分類模式。
id pid name
1 0 四川
2 0 重慶
3 1 成都
4 1 綿陽
5 3 高新區(qū)
代碼如下所示:
/** * 數(shù)組變成無限級(jí)分類--傳引用思想 * @param array $items * @return array */ public static function get_tree($orig) { //解決下標(biāo)不是1開始的問題 $items = array(); foreach ($orig as $key => $value) { $items[$value[‘id‘]] = $value; } //開始組裝 $tree = array(); foreach ($items as $key => $item) { if ($item[‘pid‘] == 0) { //為0,則為1級(jí)分類 $tree[] = &$items[$key]; } else { if (isset($items[$item[‘pid‘]])) { //存在值則為二級(jí)分類 $items[$item[‘pid‘]][‘child‘][] = &$items[$key]; //傳引用直接賦值與改變 } else { //至少三級(jí)分類 //由于是傳引用思想,這里將不會(huì)有值 $tree[] = &$items[$key]; } } } return $tree; }
以上內(nèi)容很簡(jiǎn)單吧,如有錯(cuò)誤或者更好的方法,希望可以相互交流。謝謝。!
- php無限極分類實(shí)現(xiàn)的兩種解決方法
- PHP超牛逼無限極分類生成樹方法
- php無限極分類遞歸排序?qū)崿F(xiàn)方法
- PHP實(shí)現(xiàn)無限極分類生成分類樹的方法
- php通過前序遍歷樹實(shí)現(xiàn)無需遞歸的無限極分類
- PHP無限極分類函數(shù)的實(shí)現(xiàn)方法詳解
- thinkphp5使用無限極分類
- 淺談PHP無限極分類原理
- PHP利用遞歸函數(shù)實(shí)現(xiàn)無限級(jí)分類的方法
- PHP 無限分類三種方式 非函數(shù)的遞歸調(diào)用!
- PHP實(shí)現(xiàn)無限極分類的兩種方式示例【遞歸和引用方式】
相關(guān)文章
thinkphp3.2.3版本的數(shù)據(jù)庫增刪改查實(shí)現(xiàn)代碼
下面小編就為大家?guī)硪黄猼hinkphp3.2.3版本的數(shù)據(jù)庫增刪改查實(shí)現(xiàn)代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09微信公眾平臺(tái)開發(fā)實(shí)現(xiàn)2048游戲的方法
這篇文章主要介紹了微信公眾平臺(tái)開發(fā)實(shí)現(xiàn)2048游戲的方法,較為詳細(xì)的講述的2048游戲的原理以及微信公眾平臺(tái)開發(fā)2048游戲的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04phpcms實(shí)現(xiàn)驗(yàn)證碼替換及phpcms實(shí)現(xiàn)全站搜索功能教程詳解
這篇文章主要介紹了phpcms的驗(yàn)證碼替換 及 phpcms實(shí)現(xiàn)全站搜索功能,需要的朋友可以參考下2017-12-12在 Laravel 中動(dòng)態(tài)隱藏 API 字段的方法
這篇文章主要介紹了在 Laravel 中動(dòng)態(tài)隱藏 API 字段的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10PHP面向?qū)ο笾I(lǐng)域模型+數(shù)據(jù)映射器實(shí)例(分析)
下面小編就為大家?guī)硪黄狿HP面向?qū)ο笾I(lǐng)域模型+數(shù)據(jù)映射器實(shí)例(分析)。小編覺得挺不錯(cuò)的。現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06