// 无限分级递归
public function getChild($data, $pid = 0)
{
//初始化类目
$array = [];
//循环所有数据找$id的类目
foreach ($data as $key => $datum) {
//找到类目了
if ($datum['pid'] == $pid) {
//保存下来,然后继续找类目的类目
$array[$key] = $datum;
//先去掉自己,自己不可能是自己的儿孙
unset($data[$key]);
//递归找,并把找到的类目放到一个array的字段中
$array[$key]['children'] = $this->getChild($data, $datum['id']);
}
}
return $array;
}
来源于网络感谢作者分享。留着备用