查看演示
Menu
快速导航

table

table是万能标签,可以查询所有数据表。需要在系统字段里设置_table="表名"来指定数据表。

标签语法

{table _table="file" _page_on="true"}
	{$v.name}
{/table}
//表名不需要加前缀。如db_file写成file即可

循环体

变量 字段类型 名称 备注
{$v} Array 查询数据的结果集 如果 _v设置了值,这里变量也要对应起来
{$key} Int 数组键名变量名 从0开始,如果_key设置了值,这里变量也要对应起来

table标签循环体输出的数据如果需要输出栏目名称,或者信息链接,需要用caturl , title 函数 例:

{table _table="cms_news" catid="1" _limit="10" _v="v2"}
    栏目:<a href="{:caturl($v['catid'])}">{$GLOBALS['cat'][$v['catid']]['name']</a>
    信息:<a href="{:titleurl($v)}">{$v.title}</a>
{/table}

当list有嵌套的情况下,防止多个$v混淆,我们可以修改$v的变量名称
_v="v2",这样对应输出的变量就是 $v2

{table _table="file" _limit="10" _v="v2"}
    <li>{$v2.title}</li>
{/table}

同样也可以对数组键名变量名修改

_key="key2",这样对应输出的变量就是 $key2

按条件搜索

可以根据指定条件进行sql查询,例如我们要查询file表中ext为jpg的所有信息

{table _table="file" ext="jpg"}
    {$v.name}
{/table}

支持thinkphp6 查询表达式

表达式 含义 示例
= 等于 sex="男"
<> 不等于 city<>"上海"
> 大于 id>"13"
>= 大于等于 id>="13"
< 小于 id<"13"
<= 小于等于 id<="13"
<in> IN 查询 id<in>"1,2,3"
<not in> 不在IN 查询 id<not in>"1,2,3"
<like> 模糊查询 title<like>"%上海%"
<not like> 不含模糊查询 title<not like>"%上海%"
<between> 区间查询 id<between>"1,8"
<not between> 排队区间查询 id<not between>"1,8"
<regexp> 正则匹配查询 id<regexp>"[0-9]"
<not regexp> 正则(不)匹配查询 id<not regexp>"[0-9]"

排序

_order="排序参数"

查询指定字段

_field="字段名" //多个字段用,号隔开

默认查询所有字段

查询条数限制

_limit="10" 为查询条数限制

开启分页

标签支持分页,即根据当前查询出来的数据可以按分页来显示,这一功能非常适用于一个页面中有多个分页的需求。

分页参数如下:

字段 说明 必填 默认 备注
_page_on 开启分页 No No 是否开启分布
_page_list_rows 每页显示多少条 No 20 默认每页显示20条
_page_query url额外参数 No 当前所有url参数 默认带上当前url参数
_page_display_var 输出分页变量(用于显示分页的) No page 在对应的地方可以输出{$page|raw }
_page_url_var 传递分页码变量 No p 用于url传递的页码的,当一个页面中有多个分页的时候需要命名不同的

所有参数说明

字段 说明 必填 默认 备注
_table 表名 Yes   需要查询的数据表名
_order 排序 No sort asc,catid asc  
_group group排列 No    
_limit 查询条数 No 不限  
_having mysql having语法 No    
_join join查询 No    
_field 只针对主表字段 No 主表所有字段  
_key 数组键名变量名 No key 通常在多层循环嵌套时需要修改变量名
_v 数组循环变量名 No v 在循环体里用的如:{$v.title}
_data 是否包含副表 No 0 默认不查询副表
_page_on 开启分页 No No 是否开启分布
_page_list_rows 每页显示多少条 No 20 默认每页显示20条
_page_query url额外参数 No 当前所有url参数 默认带上当前url参数
_page_display_var 输出分页变量(用于显示分页的) No page 在对应的地方可以输出{$page|raw }
_page_url_var 传递分页码变量 No p 用于url传递的页码的,当一个页面中有多个分页的时候需要命名不同的变量名

分页示例

{table _table="file" _page_on="true"}
	{$v.name}
{/table}
<div>{$page|raw }</div>

快速导航

0.088591s