巧妙使用PHP引用及递归有时能够给我们的应用带来及大的便捷, 当然, 这里不是讲 &引用及递归的具体概念[具体什么东西, 不知道的朋友请自行百度脑补], 而是直接通过一个实例给大家看他的方便[通过PHP引用及递归的方法得到无限分类的所有父级类别]
1. 数据库表如下:
2. 要得到一个类别的所有父类
//得到文件所有的父级[数据读取使用的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. 调用方便及显示结果
$table = "yt_areaclass"; $path = getParentPath1(10,$table); dump($path);