数据查询 - 代码示例
read() - 数据统计
// 统计表数据量
$count = read('news');
// 参数: $table=表名(不含前缀), $where=条件
// 返回: 记录数
// 带条件的统计
$count = read('product', ['checked' => 1]);
// 示例: 统计已审核产品数
$checked = read('product', ['checked' => 1]);
// 示例: 统计推荐新闻数
$rec = read('news', ['ifrecommend' => ['like', '%1%']]);
getTableContent() - 通用内容查询
// 查询新闻列表
$list = getTableContent('news', 10, [], 'id desc');
// 参数: $table, $nums, $wheresql=条件数组, $order
// 带条件查询
$list = getTableContent('product', 10, [
'checked' => 1,
'delstatus' => 0
], 'clicks desc');
// 条件支持: 键值对、like、in等
$list = getTableContent('news', 10, [
'title' => ['like', '%化工%']
], 'id desc');
getTableContentall() - 按分类查询
// 按分类查询内容
$list = getTableContentall('news', $cid, 10, 'id desc');
// 参数: $table, $cid=分类ID, $nums, $order
// 自动包含delstatus=0和checked=1条件
// 查询分类下产品
$products = getTableContentall('product', 5, 10, 'id desc');
getDataByCat() - 通用分类数据
// 按类型和分类获取数据
$list = getDataByCat($cid, 'news', 10, 'id desc');
// 参数: $cid, $ctype=类型, $nums, $order
// 类型: news/product/video/photo/experience/kungfu/master
// 获取分类下视频
$videos = getDataByCat(3, 'video', 10, 'clicks desc');
Db门面 - 复杂查询
use think\facade\Db;
// 多表关联查询
$list = Db::name('product')
->alias('p')
->join('category c', 'p.cid = c.cid')
->where('p.delstatus', 0)
->where('p.checked', 1)
->field('p.*, c.cnname as catname')
->order('p.id', 'desc')
->limit(10)
->select();
// 分页查询
$list = Db::name('news')
->where('delstatus', 0)
->order('id', 'desc')
->paginate(15);
// 聚合查询
$count = Db::name('product')->where('checked', 1)->count();
$sum = Db::name('product')->where('checked', 1)->sum('clicks');
$avg = Db::name('product')->where('checked', 1)->avg('clicks');
数据统计 read()
| 表名 | 记录数 |
|---|---|
| news (新闻) | 15 |
| product (产品) | 6 |
| video (视频) | 5 |
| member (会员) | 5 |
getTableContent('news', 5)
| ID | 标题 | 点击 | 创建时间 |
|---|---|---|---|
| 15 | 技术革新报告1 | 0 | 2026-07-15 07:46 |
| 14 | 安全生产规范 | 0 | 2026-07-15 07:46 |
| 13 | 环保政策解读 | 0 | 2026-07-15 07:46 |
| 12 | 新材料研发进展 | 0 | 2026-07-15 07:46 |
| 11 | 化工行业最新动态 | 0 | 2026-07-15 07:46 |
getTableContent('product', 5, ['checked'=>1], 'clicks desc')
条件查询: checked=1, 按点击量降序
| ID | 标题 | 点击 |
|---|---|---|
| 1 | ModSuccess | 0 |
| 2 | 测试商品_1786152275 | 0 |
| 12 | 测试化工产品A1 | 0 |
| 10 | 农业化学品 | 0 |
| 9 | 医药中间体 | 0 |
getDataByCat(0, 'news', 5)
| ID | 标题 |
|---|---|
| 14 | 安全生产规范 |
| 13 | 环保政策解读 |
| 12 | 新材料研发进展 |
| 11 | 化工行业最新动态 |
| 10 | 技术革新报告 |