最近工作中用到 Smarty
模板引擎,整理了一些用到的模板函数。
假设 smarty 的定界符为 {}。
- 模板中获取服务端 $_GET 的值:
{$smarty.get.参数名}
- 模板中获取服务端 $_POST 的值:
{$smarty.post.参数名}
- 模板中获取服务端 $_REQUEST 的值:
//request可以获取get或post的值。
{$smarty.request.参数名}
- 模板中获取服务端 $_SESSION 的值:
{$smarty.session.参数名}
- 模板中获取服务端 $_COOKIE 的值:
{$smarty.cookies.参数名}
- 模板中获取服务端 $_SERVER 的值:
{$smarty.server.参数名}
- 模板中将时间戳转成Y-m-d H:i:s:
{$参数名|date_format:'%Y-%m-%d %H:%M:%S'}
- 模板中将字符串转成小写:
{$参数名|lower}
- 模板中将字符串转成大写:
{$参数名|upper}
- 模板中将字符串首字母转成大写:
{$参数名|capitalize}
- 模板中将字符串后加入字符:
{$参数名|cat:'字符串'}
- 模板中如果变量为空或不存在就设置默认值:
{$参数名|default:'字符串'}
- 模板中字符串长度超多20后面隐藏用...连接:
{$参数名|truncate:23:"...":true}
- 模板中将字符串中的HTML转换为HTML编码方式:
{$参数名|escape:html}
- 模板中将字符串中的HTML转换为URL编码方式:
{$参数名|escape:url}
- 模板中利用正则表达式替换字符:
{$参数名|regex_replace:"/字符串1/":"字符串2"}
- 模板中利用Replace替换字符:
{$参数名|replace:"字符串1":"字符串2"}
- 模板中格式化数字为Float类型(四舍五入保留两位小数)
{$参数名|string_format:"%.2f"}
- 模板中格式化数字为Int类型(如果有小数点位,会舍去)
{$参数名|string_format:"%d"}
- 如果js的{} 与 smarty定界符冲突:
(1)修改定界符设成 <{ }>
(2)可以把JS代码包含在{literal} {/literal}之间。
Thanks ~