#### 变量(全局)
#### 调用PHP变量(支持类型:字符串、数字)
> 例子:调用文章详情页标题
```
{$title}
```
> 例子:文章内容
```
{$content|raw}
```
> 当前栏目信息
```
{$category.catname}
{$category.catdir}
```
> 当前页面url
```
{$url}
```
> 首页url
```
{$siteurl}
```
#### 运算符
模板输出支持使用运算符,包括“+”“-” “*” “/”和“%”
#### 三元运算
```
{$vo.status ? '正常' : '待审核'}
```
### 调用PHP数组键值(支持类型:数组)(2种写法)
> 例子:调用站点名称
```
{$SEO.site_name}
{$SEO['site_name']}
```
#### [内容-相关设置-CMS配置]CMS变量调用
```
站点名称 {$cms_config.site_name} 或 {$SEO.site_name}
站点标题 {$cms_config.site_title} 或 {$SEO.site_title} 或 {$SEO['site_title']}
站点关键词 {$cms_config.site_keyword} 或 {$SEO.keyword}
站点描述 {$cms_config.site_description} 或 {$SEO.description}
```
#### [设置-网站设置]系统配置变量调用
```
PC端网址 {$system_config.web_site_url}
PC端网址 {$system_config.web_site_mobileurl}
PC端推广码 {$system_config.web_site_scode}
移动端推广码 {$system_config.web_site_scode_mobile}
ICP备案号 {$system_config.web_site_icp}
ICP备案名称 {$system_config.web_site_icp_name}
站点代码 {$system_config.web_site_statistics] [此字段可存储站长认证、统计代码等]
当前站点风格主题{$system_config.theme}
允许上传图片后缀{$system_config.upload_image_ext}
允许上传文件后缀{$system_config.upload_file_ext}
水印图片地址 {$system_config.upload_thumb_water_pic}
上传驱动 {$system_config.upload_driver} [本地local|七牛qiniu]
......
```
#### 循环遍历二维数组变量
> 例子:二维数组变量名为$data,遍历当前循环变量名为$vo
> volist标签name属性为模板赋值的变量名称,不可随意在模板中改变。id表示当前的循环变量,可以随意指定,但确不能和name属性名称冲突,如果没有指定key属性,则默认使用循环变量 i 。
```
{volist name="data" id="vo" key="k"}
{$vo.title}
{/volist}
```
输出二维数组变量中的部分数据
```
{volist name="data" id="vo" offset="5" length='10'}
{$vo.title}
{/volist}
```
仅输出行数为偶数的数据
```
{volist name="data" id="vo" mod="2" }
{eq name="mod" value="1"}
{$vo.name}
{/eq}
{/volist}
```
> 遍历模型列表
```
<select name="search modellist">
{volist name="modellist" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
```
#### FOREACH循环遍历标签
```
{foreach $data as $vo}
{$vo.title}
{/foreach}
```
```
{foreach name="data" item="vo" key="k"}
{$k}{$vo.name}
{/foreach}
```
#### for标签
> 开始、结束、步进和循环变量都支持变量,开始和结束值是必须的,其他可选。comparison 的默认值是lt,表示小于的意思,name的默认值是i,步进的默认值是1。
```
{for start="1" end="10" comparison="lt" step="1" name="i" }
{$data[$i]['title']}
{/for}
```
#### 条件控制调用变量
> 例子:$data二维数组数据为空时,显示无数据否则遍历二维数组
```
{if empty($data)}
<span>无数据</span>
{else /}
{volist name="data" id="vo"}
{$vo.title}
{/volist}
{/if}
```
判断变量存在且不为空简写方式
```
{if $data}
<span>有数据</span>
{/if}
```
> if condition表达式标签
```
<!-- if 等于 (第一种)-->
{if condition="$vo['start_time'] eq $vo['end_time']"}
<span>两个时间相等</span>
{/if}
<!-- if 等于(第二种)-->
{if condition="$vo.start_time eq $vo.end_time"}
<span>两个时间相等</span>
{/if}
<!-- if 不等于-->
{if condition="$vo['start_time'] neq $vo['end_time']"}
<span>两个时间不相等</span>
{/if}
<!-- 一个if else-->
<if condition="$company_info.status eq 0 ">
<span>审核中</span>
<else />
<span>未审核</span>
</if>
<!-- 多个if else 嵌套-->
<if condition="$company_info.status eq 0 ">
<span>审核中</span>
<elseif condition="$company_info.status eq 1 ">
<span>审核通过</span>
<elseif condition="($company_info.status eq 2) OR ($company_info.status eq 99) ">
<span>审核被拒或者未认证</span>
<else />
<span>未审核</span>
</if>
```
> if condition表达式符号:
| 符号名称 | 术语符号 |
| --- | --- |
| 大于 | gt |
| 小于 | lt |
| 等于 | eq |
| 不等于 | neq |
| 或者 | or |
| 并且 | and |
> 在condition表达式属性中可以支持eq等判断表达式
> 但不支持带有”>”、”<”等符号的用法,会混淆模板标签的解析
> empty标签
```
{empty name="data"}
<span>无数据</span>
{/empty}
```
#### switch标签
```
{switch vo.id}
{case 1}
值为1
{/case}
{case 2}
值为2
{/case}
{default /}
输出默认值
{/switch}
```
case多条件判断(例子:vo.id转intval类型后比较case)
```
{switch vo.id|intval}
{case 1|2|3}
值为1,2,3其中一个
{/case}
{default /}
输出默认值
{/switch}
```
#### 比较标签
eq或者 equal:等于
neq 或者notequal:不等于
gt:大于
egt:大于等于
lt:小于
elt:小于等于
heq:恒等于
nheq:不恒等于
```
{比较标签 name="变量" value="值"}内容{/比较标签}
```
#### in标签 notin标签
```
{in name="id" value="1,2,3"}id值在1,2,3范围{/in}
```
```
{notin name="id" value="1,2,3"}id值不在1,2,3范围{/in}
```
```
{in name="id" value="1,2,3"}id值在1,2,3范围{else /}id值不在1,2,3范围{/in}
```
in或not标签可用range标签替代
```
{range name="id" value="1,2,3" type="in"}id值在1,2,3范围{else /}id值不在1,2,3范围{/in}
```
#### 常量调用
> 默认 public 做为web根目录时 当前静态资源根路径地址调用方法:
```
__STATIC__ [对应路径:static]
__UPLOAD__ [对应路径:uploads]
__IMG_PATH__ [对应路径:static\modules\cms\images]
__CSS_PATH__ [对应路径:static\modules\cms\css]
__JS_PATH__ [对应路径:static\modules\cms\js]
__HOME_PATH__ [对应路径:static\modules\cms]
```
#### 静态资源路径调用(当前生效的主题风格路径)(css、js、jpg等文件)
```
调用css文件
<link href="__HOME_PATH__/{$system_config.theme}/css/style.css" rel="stylesheet" type="text/css" />
调用js文件
<script src="__HOME_PATH__/{$system_config.theme}/js/banner.js" type="text/javascript"></script>
调用图片文件
<img src="__HOME_PATH__/{$system_config.theme}/images/logo.jpg" alt="{$cms_config.site_name}" />
```