巧妙使用PHP引用及遞歸有時(shí)能夠給我們的應(yīng)用帶來及大的便捷, 當(dāng)然, 這里不是講 &引用及遞歸的具體概念[具體什么東西, 不知道的朋友請(qǐng)自行百度腦補(bǔ)], 而是直接通過一個(gè)實(shí)例給大家看他的方便[通過PHP引用及遞歸的方法得到無限分類的所有父級(jí)類別]
1. 數(shù)據(jù)庫(kù)表如下:
2. 要得到一個(gè)類別的所有父類
//得到文件所有的父級(jí)[數(shù)據(jù)讀取使用的TP方便] function getParentPath($id,$table,&$arr=[]){ $pid = \think\Db::table($table)->where("id","=",$id)->value("parentid"); if($pid){ $arr[] = $pid; // dump($arr); getParentPath($pid,$table,$arr); } return array_reverse($arr); }
3. 調(diào)用方便及顯示結(jié)果
$table = "yt_areaclass"; $path = getParentPath1(10,$table); dump($path);