Smarty 模板函数

发布于 2017-01-08  约 3 分钟

最近工作中用到 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 ~

作者:PHP后端开发者

免费提供技术咨询服务(自己懂的知识)。

关注微信公众号,留言即可,看到留言后会及时回复。

IT小圈儿

阅读 1.1k发布于 2017-01-08

推荐阅读
PHP 笔记
用户专栏

技术的深度和广度只能靠自己努力去发掘,谁也不能替你学习,在这里希望你能有所收获。

119 人关注
57 篇文章
专栏主页
目录