现在很多框架是不推荐用smarty的,因为处理太繁琐,也会影响运行效率。但smarty给我们带来的开发上的便利,也是显而易见的,因此整理了一个简化版的smarty。
1.先在bootstrap里面注册自己的view控制器
2.在libray里件里加上Smarty.php(文章后面有下载地址)
3.在模块中应用(我添加了一个名为Api的模块)
我对模块做了个小修改,增加了template文件里面放的是模板文件以.html为扩展名(smarty对文件扩展名没有限制,不用改配置文件)
例子:
index.php
index.html
Smarty文档
一、资源引用
res标签
功能:返回当前模块静态资源url路径
实例:{res file=css.css}
include标签
功能:在当前模板中包含其它模板
实例:{include file=header.html}
二、模板变量
assign标签
例在index.html中赋值变量
模板代码:
{assign var=name value=Tom}
Hello,{$name}!
$smarty标签
实例:$smarty.get $smarty.post $smarty.cookie $smarty.env $smarty.server $smarty.request $smarty.session等
三、变量调节器
default
功能:为变量设置一个默认值,当变量为空或者未分配的时候,将由默认值替代输出
实例:{$var|default:no title}
truncate
功能:字符串截取。从字符串开始处截取某长度的字符。默认会在末尾追加省略号。
实例:{$content|truncate:20}
date
功能:格式化本地时间和日期。
实例:{$var|date:format}
foreach
说明:
foreach 用于处理简单数组(数组中的元素的类型一致)。
foreach 必须和 /foreach 成对使用,且必须指定 from 和 item 属性。
foreach 可以嵌套,但必须保证嵌套中的 foreach 名称唯一。
foreachelse 语句在 from 变量没有值的时候被执行。
from 属性:指定被循环的数组,数组长度决定了循环的次数。
item属性:单个循环项目的变量名,在循环内部使用。
name 属性为可选属性,可以任意指定(字母、数字和下划线的组合)。
key:单个循环的Key值。(这行是ZC加的说明)
name 属性如果指定,foreach循环体内会自动生成如下变量
$smarty.foreach.foreach_name.index表示本次循环索引,从0开始递增的整数
$smarty.foreach.foreach_name.iteration表示本次的循环次数,从1开始递增的整数
$smarty.foreach.foreach_name.first表示是否是第一次循环
$smarty.foreach.foreach_name.last表示是否是最后一次循环
$smarty.foreach.foreach_name.show表示是否有数据
$smarty.foreach.foreach_name.total表示循环总次数,也可在循环体外使用
实例1
模板代码:
{* 该例将输出数组 $custid 中的所有元素的值 *}
{foreach from=$custid item=curr_id}
id: {$curr_id}
{/foreach}
输出结果为:
id: 1000
id: 1001
id: 1002
只整理了些常用的,其实还有很多功能可以查看smrty.php
下载地址:http://www.guodev.cn/wp-content/uploads/2016/08/Api.zip
如若转载,请注明出处:https://www.ozabc.com/jianzhan/528243.html