往往在树形结构数据处理过程中,需要求当前数据的所有父级数据。这里给出一个递归函数,可以直接使用获取到所有父级数据组成的字符串,当然可以通过处理变成数组或者自己想要的数据类型
首先给出数据表的数据截图如下:
使用的递归函数如下:(使用的是tp5框架书写,表名为fc_group。两个参数分别是当前节点id和接受所有父级id,包括当前id定义的字符串)
function getparentid($id,$str){
$data = Db::name('fc_group')->where('id',$id)->find();
if($data['pid'] == 0){
$str = '';
}else{
$str .= $data['id'];
}
if($data['pid']){
return $this->getparentid($data['pid'],$str);
}else{
return $str;
}
}