Rumah > Artikel > pembangunan bahagian belakang > ThinkPHP模板之变量输出、自定义函数与判断语句用法
这篇文章主要介绍了ThinkPHP模板之变量输出、自定义函数与判断语句用法,是关于ThinkPHP模板操作中非常实用的技巧,需要的朋友可以参考下
本文实例讲述了ThinkPHP模板之变量输出、自定义函数与判断语句用法。主要包括变量输出、自定义函数与判断语句三种用法。分享给大家供大家参考。具体分析如下:
模板操作变量输出:
快捷输出变量
复制代码 代码如下:
{:function(…)} //执行方法并输出返回值 {~function} //执行方法不输出 {@var} //输出Session变量 {#var} //输出Cookie变量 {&var} //输出配置参数 {%var} //输出语言变量 {.var} //输出GET变量 {^var} //输出POST变量 {*var} //输出常量
模版输出
复制代码 代码如下:
//1 直接调用index操作模板 $this->display(); // 对应Myapp/Tpl/default/Index/index.html //2 调用Index模块的test1操作模板 $this->display('test1'); //对应Myapp/Tpl/default/Index/test1.html //2 调用Message模块的test2操作模板() $this->display('Message:test2'); //对应Myapp/Tpl/default/Message/test2.html //3 调用XP主题的Message模块的test2操作模板 $this->display('Xp@Message:test2'); //对应Myapp/Tpl/Xp/Message/test2.html //4 直接指定模板文件的全名 $this->display('../Message/test3.html'); //对应Myapp/Tpl/default/Message/test3.html
使用判断语句
我们可以使用if标签来定义复杂的条件判断,例如:
复制代码 代码如下:
<if condition="($name eq 1) OR ($name gt 100) "> value1 <elseif condition="$name eq 2" />value2 <else /> value3 </if>
在condition属性中可以支持eq等判断表达式 ,同上面的比较标签,但是不支持带有”>”、”815bd118b3c240421e23fae27350b045)
egt 大于等于(>=)
lt 小于(<)
elt 小于等于(<=)
heq 恒等于(===)
nheq 不恒等于(!==)
condition 条件
注意
condition 属性值中,变量是需要 $ 符号的,这与其他标签不同。
使用自定义函数的方法
模板变量的函数调用格式:{$varname|function1|function2=arg1,arg2,### }
使用例子:
复制代码 代码如下:
{$webTitle|md5|strtoupper|substr=0,3} {$number|number_format=2} {$varname|function1|function2=arg1,arg2,### }
实例如下:
复制代码 代码如下:
function Cate($cid){ $Cate=D('Cate'); $Cate=$Cate->where('id='.$cid)->find(); return $Cate['title']; }
我想在模板中调用这个函数则在模板中可以这样写
复制代码 代码如下:
{$vo.cid|cate=###}
注意:自定义函数要放在项目应用目录/common/common.php中。 这里是关键。
说明:
{ 和 $ 符号之间不能有空格,后面参数的空格就没有问题;
###表示模板变量本身的参数位置 ;
支持多个函数,函数之间支持空格 ;
支持函数屏蔽功能,在配置文件中可以配置禁止使用的函数列表 ;
支持变量缓存功能,重复变量字串不多次解析。
相关推荐:
Atas ialah kandungan terperinci ThinkPHP模板之变量输出、自定义函数与判断语句用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!