PHP模板引擎Smarty中的保留变量用法分析


Posted in PHP onApril 11, 2016

本文实例讲述了PHP模板引擎Smarty中的保留变量用法。分享给大家供大家参考,具体如下:

在 Smarty 中,有一些保留变量,它们是不需要 PHP 脚本去分配就可以直接使用,即不用使用 $_tpl->assign('var','value') 去分配。

1、在模板中访问页面请求的变量

{$smarty.get.user} == $_GET['user']
{$smarty.post.user} == $_POST['user']
{$smarty.cookie.username} == $_COOKIE['username']
{$smarty.session.username} == $_SESSION['username']
{$smarty.server.REMOTE_ADDR} == $_SERVER["REMOTE_ADDR"]
{$smarty.env.PATH} == $_ENV['PATH']
{$smarty.request.username} == $_REQUEST['username']

2、在模板文件中访问 PHP 脚本中定义的常量和系统常量

{$smarty.const.__FILE__}  //当前执行的 PHP 文件
{$smarty.const.CONST_VAR}  //访问 PHP 脚本中 define 定义的常量

3、在模板文件中获取当前服务器的时间

{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}  == PHP脚本中的 date('Y-m-d H:i:s',time())

4、配置文件在模板中的访问

可以通过 {$smarty.config.配置变量} 来访问配置文件中的模板变量。这样的话,在模板中访问配置文件中的变量就有两种方法:一、{#配置变量#};二、{$smarty.config.配置变量},如果有区域的话,也是如此。

5、获取 Smarty 内建函数 capture 捕获的数据

capture函数的作用是捕获模板输出的数据并将其存储到一个变量里,而不是把它们输出到页面,任何在 {capture name="foo"}和{/capture}之间的数据将被存储到变量$foo中,该变量由name属性指定。在模板中通过 $smarty.capture.foo 访问该变量,如果没有指定 name 属性,函数默认将使用 "default" 作为参数。

6、保留变量 $smarty.foreach

$smarty.foreach 获取 foreach 循环数组的一些信息,比如数组的个数、递增+1……,关于 $smarty.foreach 的使用,详细内容可参考前面一篇《PHP模板引擎Smarty内建函数foreach,foreachelse用法分析》

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
php下图片文字混合水印与缩略图实现代码
Dec 11 PHP
php数据库配置文件一般做法分享
Jul 07 PHP
PHP简单获取视频预览图的方法
Mar 12 PHP
php检测图片主要颜色的方法
Jul 01 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 PHP
php+mysql+jquery实现日历签到功能
Feb 27 PHP
关于PHP定时发送服务的解决办法
Apr 23 PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
Sep 15 PHP
PHP有序表查找之插值查找算法示例
Feb 10 PHP
基于swoole实现多人聊天室
Jun 14 PHP
php抽象类和接口知识点整理总结
Aug 02 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
Aug 12 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
Apr 11 #PHP
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
Apr 11 #PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 #PHP
php实现生成验证码实例分享
Apr 10 #PHP
PHP实现简单实用的分页类代码
Apr 08 #PHP
PHP文件上传类实例详解
Apr 08 #PHP
PHP实现基于mysqli的Model基类完整实例
Apr 08 #PHP
You might like
解析func_num_args与func_get_args函数的使用
2013/06/24 PHP
学习php过程中的一些注意点的总结
2013/10/25 PHP
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
2014/06/12 PHP
php获取CSS文件中图片地址并下载到本地的方法
2014/12/02 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
图片格式的JavaScript和CSS速查手册
2007/08/20 Javascript
javascript 变量作用域 代码分析
2009/06/26 Javascript
关于flash遮盖div浮动层的解决方法
2010/07/17 Javascript
JS图片预加载 JS实现图片预加载应用
2012/12/03 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
JavaScript中的document.referrer在各种浏览器测试结果
2014/07/18 Javascript
jQuery得到多个值只能用取Class ,不能用取ID的方法
2016/12/04 Javascript
vue实现ajax滚动下拉加载,同时具有loading效果(推荐)
2017/01/11 Javascript
easyui关于validatebox实现多重规则验证的方法(必看)
2017/04/12 Javascript
基于复选框demo(分享)
2017/09/27 Javascript
详解Nodejs 通过 fs.createWriteStream 保存文件
2017/10/10 NodeJs
详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决
2019/04/14 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
2019/11/01 Javascript
Python分割指定页数的pdf文件方法
2018/10/26 Python
Python3.7实现验证码登录方式代码实例
2020/02/14 Python
使用Tkinter制作信息提示框
2020/02/18 Python
python 密码学示例——凯撒密码的实现
2020/09/21 Python
html5 CSS过度-webkit-transition使用介绍
2013/07/02 HTML / CSS
如何用canvas实现在线签名的示例代码
2018/07/10 HTML / CSS
美国汽车轮胎和轮毂销售网站:Tire Rack
2018/01/11 全球购物
外贸销售员求职的自我评价
2013/11/23 职场文书
初中生自我评价
2014/02/01 职场文书
王老吉广告词
2014/03/20 职场文书
《风筝》教学反思
2014/04/10 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
销售员工作检讨书(推荐篇)
2014/10/18 职场文书
中学教师师德师风承诺书
2015/04/28 职场文书
2015年个人实习工作总结
2015/05/28 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android
golang实现浏览器导出excel文件功能
2022/03/25 Golang
Python使用永中文档转换服务
2022/05/06 Python