当前栏目为:dede模板 id为16
最终效果:
Array ( [0] => Array ( [category_id] => 16 [pid] => 15 [category_name] => dede模板 [category_status] => 1 [category_sort] => 99 [template_name] => index [view_template] => view [is_index] => 0 [seo_title] => [seo_key] => [seo_desc] => ) [1] => Array ( [category_id] => 15 [pid] => 10 [category_name] => wordpress模板 [category_status] => 1 [category_sort] => 99 [template_name] => index [view_template] => view [is_index] => 0 [seo_title] => [seo_key] => [seo_desc] => ) [2] => Array ( [category_id] => 10 [pid] => 6 [category_name] => 网站建设模板 [category_status] => 1 [category_sort] => 99 [template_name] => image [view_template] => down_view [is_index] => 0 [seo_title] => 网站建设模板_企业网站模板_Div+css模板_织梦网站建设模板_wordpress模板免费下载 - 浅笑SEO [seo_key] => 网站建设模板,企业网站模板,Div+css模板,织梦网站建设模板,wordpress模板免费下载 [seo_desc] => 新疆浅笑seo提供网站建设模板、企业网站模板、Div+css模板、织梦网站建设模板、wordpress模板免费下载,如需付费服务请联系Tel::13779140165。 ) [3] => Array ( [category_id] => 6 [pid] => 0 [category_name] => 网站建设 [category_status] => 1 [category_sort] => 99 [template_name] => index [view_template] => view [is_index] => 1 [seo_title] => [seo_key] => [seo_desc] => ) )获取函数代码:
/** * 获取当前分类的上级分类数据 * @param array $data 原有数组 * @param int $parent_id 父级id * @return array [description] */ public function getParentData(array $data,int $parent_id){ //去获取当前父分类数据 $cache_ = self::where(['category_id'=>$parent_id,'category_status'=>1])->field('*')->find(); //如果父分类数据为空则直接返回data if (empty($cache_)) { return $data; }else{ //对象转数组 $cache_ = json_decode(json_encode($cache_),true); //父级栏目合并到data内 $cache = array_merge($data, [$cache_]); if ($cache_['pid'] != 0) { //如果当前父栏目上面还有父级栏目则循环获取 $cache = self::getParentData($cache, $cache_['pid']); } //返回三维数组 return $cache; } }使用方法:
public function test(){ //实例化模型 $model = new appcommonmodelCategory; //查询数据 $data = $model->where('category_id',input('cid/d',10))->find(); //对象转数组 $data = json_decode(json_encode($data),true); //打印数据 print_r($model->getParentData([$data],$data['pid']));die; }有任何问题欢迎在下方浏览或者咨询我qq:644332569
发表评论 取消回复