- CSS 怎样用css设置超链接字体的不同颜色
- FileUpload过滤文件类型
- 详解SQL Server数据库索引
- SQL选择不重复记录
- $_SERVER参数HTTP_X_FORWARDED_FOR & REMOTE_ADDR与获取IP
- c#发送邮箱的功能
- 如何自建博客,增加站外锚文本,获得大量的外链
- 新手怎么制作自己的个人网站
- 微信小程序中使用ec-canvas制作环状饼图
- aspx 页面 包含html页面方法
邮箱:
手机:15383239821
thinkphp变量输出
普通标签
用于变量输出和模板注释,默认以{ 和 } 作为开始和结束标识,并且在开始标记紧跟标签的定义,如果之间有空格或者换行则被视为非模板标签直接输出。 例如:{KaTeX parse error: Expected 'EOF', got '}' at position 5: name}̲ 、{vo.name} 、{$vo[‘name’]|strtoupper} 都属于正确的标签,而{ $name} 、{ $vo.name}则不属于。
标签库标签
用于模板变量输出、文件包含、条件控制、循环输出等功能,而且完全可以自己扩展功能。
变量输出
字符串变量
在控制器中给模板变量赋值:
$view = new View();
$view->name = 'thinkphp';
return $view->fetch();
然后在模板中使用:
Hello,{$name}!
运行的时候显示:
Hello,ThinkPHP!
注意模板标签的{和$之间不能有任何的空格,否则标签无效。所以,下面的标签
Hello,{ $name}!将不会正常输出name变量,而是直接保持不变输出: Hello,{ $name}!
数组变量
在控制器中给模板变量赋值:
$data['name'] = 'ThinkPHP';
$data['email'] = 'thinkphp@qq.com';
$view->assign('data',$data);
那么,在模板中我们可以用下面的方式输出:
Name:{$data.name}
Email:{$data.email}
或者:
Name:{$data['name']}
Email:{$data['email']}
如果data变量是一个对象,可以用下面的方式输出:
Name:{$data:name}
Email:{$data:email}
或者
Name:{$data->name}
Email:{$data->email}
使用默认值
变量输出提供默认值,php变量、参数不存在或为空时默认:
{$user.nickname|default="这家伙很懒,什么也没留下"}
系统变量使用默认值输出:
{$Think.get.name|default="名称为空"}
默认值和函数(同模板页面调用JS函数方法,PHP函数调用“|”前为参数值,“|”后为函数方法)可以同时使用:
{$Think.get.name|getName|default="名称为空"}
使用运算符
模板输出使用运算符“+”、“-” 、“*”、 “/”和“%”。
运算符 使用示例
+ {$ a+$b}
- {$ a-$b}
* {$ a *$ b}
/ {$ a/ $b}
% {ab}
++ {$ a++} 或 {++$a}
– {$ a- -} 或 {- -$a}
综合运算 {$ a+b ∗ 10 +c}
使用运算符的时候,不再支持常规函数用法:
{$user.score+10} //正确的
{$user['score']+10} //正确的
{$user['score']*$user['level']} //正确的
{$user['score']|myFun*10} //错误的
{$user['score']+myFun($user['level'])} //正确的
三元运算
模板可以支持三元运算符,例如:
{$status? '正常' : '错误'}
{$info['status']? $info['msg'] : $info['error']}
{$info.status? $info.msg : $info.error }
{$a==$b ? 'yes' : 'no'}
- 上一篇:如何理解thinkphp中的self::get?
- 下一篇:thinkphp常用语法
-
2013-06-18使用DataTable批量插入数据库,快速插入数据 .
-
2013-06-11在线用户实体缓存解决方案
-
2012-10-07石家庄seo:网站url优化注意事项
-
2020-07-27SEM营销和SEO优化之间有什么区别
-
2010-07-20中文分词 一篇关于中文分词算法的SEO必看文章
-
2023-05-04php 单引号和双引号的区别
