您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
thinkphp3.2.1学习笔记-内置标签[下]
发布时间:2017-09-19 11:32:12编辑:雪饮阅读()
判断变量标签:
<present name="user">user已赋值</present>
判断变量是否已赋值,空字符串也算赋值,null则不算赋值。
<notpresent name="user">user没有赋值</notpresent>
<present name="user">
user赋值了
<else />
user没有赋值
</present>
<present name="Think.get.user">user已存在</present>
name值可以是系统变量
<empty name="user">user为空</empty>
null和空字符串与0都为空
<defined name="APP_PATH">APP_PATH已定义</defined>
判断常量是否已定义
数据遍历:
volist:
<ul>
<volist name="data" id="arr">
<li><{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
data是数组,arr是当前数组(元素)
<ul>
<volist name="data" id="arr" offset="0" length="2">
<li><{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
从指定索引开始遍历,遍历length条。
<ul>
<volist name="data" id="arr" key="k" mod="2">
<eq name="mod" value="0">
<li><{$k}>、<{$arr.id}>--<{$arr.name}></li>
</eq>
</volist>
</ul>
key可以指定遍历过程中的序号变量,eq标签与mod属性结合实现求余,进而实现奇数与偶数的不同呈现效果。当前为index除以2余数为0
<ul>
<volist name="data" id="arr" >
<li><{$i}>、<{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
不加key属性时可以直接使用i作为序号变量
<ul>
<volist name="data" id="arr" >
<li><{$key}>、<{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
每行直接输出key则是元素的真实下标而不是序号
<ul>
<volist name="data" id="arr" empty="没有数据" >
<li><{$key}>、<{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
empty会在数组为空的时候输出自定义信息
<ul>
<volist name="data" id="arr" empty="$empty" >
<li><{$key}>、<{$arr.id}>--<{$arr.name}></li>
</volist>
</ul>
empty属性值再模板中无法直接以html为值,可以通过控制器中assign一个html的字符串变量,然后将该变量赋值于empty属性即可。
foreach标签:
<ul>
<foreach name="data" item="arr">
<li><{$arr.id}>--<{$arr.name}></li>
</foreach>
</ul>
<ul>
<foreach name="data" item="arr">
<li><{$key}>、<{$arr.id}>--<{$arr.name}></li>
</foreach>
</ul>
for标签:
<for start="1" end="100">
<{$i}><br/>
</for>
<for start="1" end="100" step="2">
<{$i}><br/>
</for>
可以设置步长
<for start="1" end="100" step="2" name="k">
<{$k}><br/>
</for>
默认循环变量是i,可以更改
<for start="100" end="1" comparison="gt" step="-2" name="k">
<{$k}><br/>
</for>
comparison属性结合start和end以及step属性决定了for循环的方向,是自加还是自减,comparison属性默认值为lt,即自加
模板中创建变量:
<assign name="var" value="123" />
<{$var}>
模板中创建常量:
<define name="XY" value="456" />
<{$Think.const.XY}>
注意一定要大写
模板中文件的引入:
<script type="text/javascript" src="__PUBLIC__/js/index.js"></script>
<link rel="stylesheet" type="text/css" href="__PUBLIC__/css/index.css" />
在这里的文件目录结构是:根目录有一个public文件夹该文件夹下有js和css文件夹,其中js文件夹中存放index.js,css文件夹中存放index.css
<import type="js" file="js.index" />
<import type="css" file="css.index" />
此种方式的目录结构同上,由于默认路径就是/public/js(css)
<import type="js" file="js.index" basepath="/Public2" />
也可以自己指定路径
<load href="__PUBLIC__/js/index.js" />
使用load加载进来
<js href="__PUBLIC__/js/index.js" />
<css href="__PUBLIC__/css/index.css" />
这种方式更友好
模板中使用php标签:
<php>
echo 1+2;
</php>
<?php echo 1+2;?>
也支持纯原生写法
<literal>
<php>
echo 1+2;
</php>
</literal>
原样输出,输出的是语句本身,而不是解析后的结果,如上面的输出结果为:
“echo 1+2;”
关键字词:thinkphp3.2.1,标签