使用内置标签的时候,一定要注意闭合-----单标签自闭合,双标签对应闭合
标签的学习在于记忆和应用
一. 判断比较
1 //IF 语句的完整格式
2
3 小新4
5 一护6
7 错误8
1 //condition 条件里可以使用 PHP 函数
2
3 //condition 条件里使用点语法,智能判断数组或对象
4
5 //condition 条件里使用冒号语法,直接使用对象
6
7 //condition 条件里使用系统变量
8
switch语句
1 //name 的值和 IF 语句一样,可以是变量、数组、对象、函数或系统变量
2
3 小新
4 一护
5 错误6
默认情况下,case 会自动添加 break 语句防止穿透,如果你就是想要穿透,那么可以去除 break。当然,绝大部分不需要设置 break。
1 //去除 break
2 小新
比较标签,都能和else搭配
1 //eq标签
2 相等不相等
3 //其他的标签和这个标题的用法基本相同不再赘述4 //compare统一方法
5 相等不相等
范围判断标签 in、notin、between、notbetween
判断变量的标签 present -- notpresent empty -- notempty defined -- notdefined
其实都可以和else搭配使用,也就说not*没有什么作用,至少实在效果上来说
1 $_GET['user']已赋值
2 //判断变量是否为空,空则输出
3 user 为空值
4 //判断变量是否为空,不空则输出
5 user不为空值
6 //判断变量是否为空,组合
7
8 user为空值9
10 user不为空值11
12 //判断变量是否为空,系统变量
13 $_GET['user']为空值
14 //判断常量是否定义,定义了输出
15 APP_PATH 常量已定义
16 //判断常量是否定义,没定义输出
17 APP_PATH 常量未定义
18 //判断常量是否定义,组合
19
20 APP_PATH常量已定义21
22 APP_PATH常量未定义23
二.遍历循环 Volist 标签、Foreach 标签和 For 标签
Volist 标签
基本:
- {$arr.id} -- {$arr.user} -- {$arr.mail}
PS:这里的 name="data"中的 data 是控制器给模版定义的数据变量,要对应;这里
的 id="arr"中的 arr 是将要遍历循环的数组名,可以自定义。
各种属性:
1 //offset 从第几条开始,起始值 0,length 共多少条
2
3
{$arr.id} -- {$arr.user} -- {$arr.mail}4
5 //mod 求当前余数,当前 index 除以 2 余 1,输出偶数
6
7
8
{$vo.id} -- {$vo.user} -- {$vo.mail}9
10
11 //没有数据的情况下使用 empty 填充
12
13
{$vo.id} -- {$vo.user} -- {$vo.mail}14
15 //empty 属性不支持 HTML 直接输入,但可以通过变量输出
16 $this->assign('empty', '没有任何数据');17
18 //通过 key 输出循环遍历的变量
19
20
{$k} -- {$vo.id} -- {$vo.user} -- {$vo.mail}21
22 //没有指定 k,也可以用 i 变量输出
23
{$i} -- {$vo.id} -- {$vo.user} -- {$vo.mail}24 //key 变量,可以直接输出索引值,从 0 开始
25
{$key} -- {$vo.id} -- {$vo.user} -- {$vo.mail}foreach标签
Foreach 标签和 Volist 标签类似,只不过 Foreach 标签更加简单,没有额外属性。
//只支持 key 属性,但{$key}变量支持
-
- {$vo.id} -- {$vo.user}
for标签就更简单了
1 //从 1 到 99 循环
2
3 {$i}
4
5 //完整形式
6
7 {$i}
8
除了start和end必须值,还有三个可选值。comparison是大于还是小于,默认值为lt
(
三.其他标签
1 //在模版中定义变量, value 值可以为变量 ($user) 或系统变量 ($Think.get.user)
2
3 {$var}4 //在模版中定义常量, value 值可以为变量 ($user) 或系统变量 ($Think.get.user)
5
6 {$Think.const.MY_NAME}7 import 导入标签可以智能的导入 js 和 css 文件8 //常规引入方法
9
10
11 href="__PUBLIC__/css/index.css" />
12 //使用 import 导入,js 和 css 是目录
13
14
15 //使用 import 导入,basepath 修改默认路径
16
17 load 加载标签可以智能的加载 js 和 css 文件18 //使用 load 加载
19
20
21 系统还提供了专用 js 和 css 标签,专门用于加载22 //使用专用标签
23
24
1 //使用 php 标签
2
3 $a = 1;4 $b = 2;5 echo $a + $b;6
7 //使用 php 语法
8 <?php9 $a = 1;10 $b = 2;11 echo $a + $b;12 ?>
13 如果想原样输出标签极其内容,可以使用 literal 标签14 //原样输出
15
16 echo 123;
17