ThinkPHP数据模型-关联查询

2026-04-14 08:57:02 145
分类:php

ThinkPHP数据模型-关联查询示例

//获取博客列表,并关联博客分类
public function getPageWithCate($where, $order = 'id desc', $limit = 20, $rule = '', $rollPage)
{
    $count = $this->where($where)->count();
    $page = new \Think\Page($count, $limit, $rule);
    $page->setRollPage($rollPage);
    $show = $page->show();
    $data = $this
        ->field('blog.*,category.name as cate')
        ->join('category on blog.category_id=category.id')
        ->where($where)->order($order)->limit($page->firstRow . ',' . $page->listRows)->select();
    return array ("data" => $data, "page" => $show);
}

//获取文章分类并获取分类文章数量
public function selectDataCate($where=array(),$order='id asc'){
    $result=$this
        ->field('category.*,(select count(*) from blog where blog.category_id=category.id and blog.state=1) as num')
        ->where($where)->order($order)->select();
    return $result;
}