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中使用Oracle数据库(3)
Oct 09 PHP
建立动态的WML站点(一)
Oct 09 PHP
让你同时上传 1000 个文件 (二)
Oct 09 PHP
php 格式化数字的时候注意数字的范围
Apr 13 PHP
PHP项目开发中最常用的自定义函数整理
Dec 02 PHP
destoon安全设置中需要设置可写权限的目录及文件
Jun 21 PHP
php内存缓存实现方法
Jan 24 PHP
PHP使用mysqldump命令导出数据库
Apr 14 PHP
PHP微信支付开发实例
Jun 22 PHP
PHP用户验证和标签推荐的简单使用
Oct 31 PHP
PHP实现二维数组中的查找算法小结
Jun 09 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 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
PHP模拟SQL Server的两个日期处理函数
2006/10/09 PHP
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
php中禁止单个IP与ip段访问的代码小结
2012/07/04 PHP
php文件上传的例子及参数详解
2013/12/12 PHP
JavaScript 学习小结(适合新手参考)
2009/07/30 Javascript
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
基于jquery的loading效果实现代码
2010/11/05 Javascript
js 函数调用模式小结
2011/12/26 Javascript
Javascript中的delete介绍
2012/09/02 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
2015/08/11 Javascript
JavaScript的new date等日期函数在safari中遇到的坑
2016/10/24 Javascript
概述javascript在Google IE中的调试技巧
2016/11/24 Javascript
微信小程序 后台登录(非微信账号)实例详解
2017/03/31 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
2017/08/29 jQuery
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
移动端H5页面返回并刷新页面(BFcache)的方法
2018/11/06 Javascript
微信小程序 弹窗输入组件的实现解析
2019/08/12 Javascript
关于layui表单中按钮自动提交的解决方法
2019/09/09 Javascript
JQuery常用简单动画操作方法回顾与总结
2019/12/07 jQuery
JS实现点餐自动选择框(案例分析)
2019/12/10 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
2020/12/04 Javascript
python实现DNS正向查询、反向查询的例子
2014/04/25 Python
Python实现的多线程http压力测试代码
2017/02/08 Python
Python实现的矩阵类实例
2017/08/22 Python
Python基础学习之基本数据结构详解【数字、字符串、列表、元组、集合、字典】
2019/06/18 Python
Python3.6安装卸载、执行命令、执行py文件的方法详解
2020/02/20 Python
最新Python idle下载、安装与使用教程图文详解
2020/11/28 Python
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
纯css3实现鼠标经过图片显示描述的动画效果
2014/09/01 HTML / CSS
如何用JQuery进行表单验证
2013/05/29 面试题
饲料采购员岗位职责
2013/12/19 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书