smarty模板中使用get、post、request、cookies、session变量的方法


Posted in PHP onApril 24, 2014

{$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量。例如,直接在模板中访问页面请求变量、获取访问模板时的时间戳、直接访问PHP中的常量、从配置文件中读取变量等。

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

我 们可以在PHP脚本中,通过超级全局数组$_GET、$_POST、$_REQUEST获取在客户端以不同方法提交给服务器的数据,也可以通 过$_COOKIE或$_SESSION在多个脚本之间跟踪变量,或是通过$_ENV和$_SERVER获取系统环境变量。如果在模板中需要这些数组,可 以调用Smarty对象中的assign()方法分配给模板。但在Smarty模板中,直接就可以通过{$smarty}保留变量访问这些页面请求变量。 在模板中使用的示例如下所示:

PHP代码

1. {$smarty.get.page} {* PHP方式:$_GET["page"] *}  

2. {$smarty.post.page} {* PHP方式:$_POST["page"] *}  

3. {$smarty.cookies.username} {* PHP方式:$_COOKIE["username"] *}  

4. {$smarty.session.id} {* PHP方式:$_SESSION["id"] *}  

5. {$smarty.server.SERVER_NAME} {* PHP方式:$_SERVER["SERVER_NAME"] *}  

6. {$smarty.env.PATH} {* PHP方式:$_ENV["PATH"]*}  

7. {$smarty.request.username} {* PHP方式:$_REQUEST["username"] *} 
2.在模板中访问PHP中的变量

在PHP脚本中有系统常量和自定义常量两种,同样这两种常量在Smarty模板中也可以被访问,而且不需要从PHP中分配,只要通过{$smarty}保留变量就可以直接输出常量的值。在模板中输出常量的示例如下所示:

1、 {$smarty.const._MY_CONST_VAL} {* 输出PHP脚本中自定义的常量 *}  

2、 {$smarty.const.__FILE__} {* 通过保留变量数组直接输出系统常量 *} 

3、其它

1.{$smarty.now}变量用于访问当前时间戳

可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

2.{$smarty.const}

你可以直接访问PHP常量. 例如{$smarty.const._MY_CONST_VAL}

3.{$smarty.capture}

可以通过 {capture}..{/capture}结构 截取的输出可以使用{$smarty} 变量访问.   

4.{$smarty.config}

{$smarty}变量 可以访问已经加载的config变量

例如 {$smarty.config.foo}就可以表示 {#foo#}

5.{$smarty.section}, {$smarty.foreach}

{$smarty} 变量可以访问'section'和'foreach'循环的属性

6.{$smarty.template} 显示当前被处理的模板的名字

7.{$smarty.version}

显示smarty模板的版本

8.{$smarty.ldelim} 显示左分隔符

9.{$smarty.rdelim} 显示右分隔符

PHP 相关文章推荐
php array_map()数组函数使用说明
Jul 12 PHP
PHP __autoload函数(自动载入类文件)的使用方法
Feb 04 PHP
php中大括号作用介绍
Mar 22 PHP
在PHP中设置、使用、删除Cookie的解决方法
May 06 PHP
深入apache配置文件httpd.conf的部分参数说明
Jun 28 PHP
PHP中的reflection反射机制测试例子
Aug 05 PHP
destoon首页调用求购供应信息的地区名称的方法
Aug 21 PHP
了解PHP的返回引用和局部静态变量
Jun 04 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
May 19 PHP
根据key删除数组中指定的元素实现方法
Mar 02 PHP
laravel 中如何使用ajax和vue总结
Aug 16 PHP
浅谈php的TS和NTS的区别
Mar 13 PHP
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
Apr 24 #PHP
php获取中文拼音首字母类和函数分享
Apr 24 #PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
Apr 24 #PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
Apr 24 #PHP
php计算当前程序执行时间示例
Apr 24 #PHP
php实现的百度搜索某地天气的小偷代码
Apr 23 #PHP
php url路由入门实例
Apr 23 #PHP
You might like
PHP调用Webservice实例代码
2011/07/29 PHP
11个PHP 分页脚本推荐
2011/08/15 PHP
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
php+html5实现无刷新图片上传教程
2016/01/22 PHP
thinkPHP简单调用函数与类库的方法
2017/03/15 PHP
php简单构造json多维数组的方法示例
2017/06/08 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
PHP实现随机数字、字母的验证码功能
2018/08/01 PHP
jquery 简单图片导航插件jquery.imgNav.js
2010/03/17 Javascript
jQuery ajax cache缓存问题
2010/07/01 Javascript
通过js动态操作table(新增,删除相关列信息)
2012/05/23 Javascript
表单验证的完整应用案例探讨
2013/03/29 Javascript
学习JavaScript设计模式(接口)
2015/11/26 Javascript
jquery 判断selection range 是否在容器中的简单实例
2016/08/02 Javascript
iOS + node.js使用Socket.IO框架进行实时通信示例
2017/04/14 Javascript
mui开发中获取单选按钮、复选框的值(实例讲解)
2017/07/24 Javascript
jQuery实现验证表单密码一致性及正则表达式验证邮箱、手机号的方法
2017/12/05 jQuery
基于vue-ssr服务端渲染入门详解
2018/01/08 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
Python的Asyncore异步Socket模块及实现端口转发的例子
2016/06/14 Python
实例讲解Python中整数的最大值输出
2019/03/17 Python
详解Python中pandas的安装操作说明(傻瓜版)
2019/04/08 Python
Python必须了解的35个关键词
2020/07/16 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
python os.listdir()乱码解决方案
2021/01/31 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
2021/02/22 Python
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
GWT (Google Web Toolkit)有哪些主要的原件组成?
2015/06/08 面试题
致跳远运动员广播稿
2014/02/11 职场文书
"9.18"国耻日演讲稿范文
2014/09/14 职场文书
初三语文教学计划
2015/01/22 职场文书
刑事辩护词范文
2015/05/21 职场文书
2015年机关党委工作总结
2015/05/23 职场文书
正规欠条模板
2015/07/03 职场文书
基于Go Int转string几种方式性能测试
2021/04/28 Golang
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python