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循环语句 for()与foreach()用法区别介绍
Sep 05 PHP
有关phpmailer的详细介绍及使用方法
Jan 28 PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
Feb 16 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 PHP
PHP Curl出现403错误的解决办法
May 29 PHP
CodeIgniter删除和设置Cookie的方法
Apr 07 PHP
CI框架中数据库操作函数$this->db->where()相关用法总结
May 17 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
Feb 10 PHP
Yii2 批量插入、更新数据实例
Mar 15 PHP
PHP下载大文件失败并限制下载速度的实例代码
May 10 PHP
PHP filter_var() 函数, 验证判断EMAIL,URL等
Mar 09 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
无线电广播的开始
2002/01/30 无线电
PHP 魔术函数使用说明
2010/05/14 PHP
关于UEditor编辑器远程图片上传失败的解决办法
2012/08/31 PHP
php在linux下检测mysql同步状态的方法
2015/01/15 PHP
在Linux系统下一键重新安装WordPress的脚本示例
2015/06/30 PHP
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
2016/12/14 PHP
php中访问修饰符的知识点总结
2019/01/27 PHP
几行代码轻松搞定jquery实现flash8类似的连接效果
2007/05/03 Javascript
JavaScript实用技巧(一)
2010/08/16 Javascript
jQuery之浮动窗口实现代码(两种方法)
2010/09/08 Javascript
基于JQuery实现的Select级联
2014/01/27 Javascript
javascript模拟post提交隐藏地址栏的参数
2014/09/03 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
JS中多步骤多分步的StepJump组件实例详解
2016/04/01 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
js鼠标按键事件和键盘按键事件用法实例汇总
2016/10/03 Javascript
微信小程序 Button 组件详解及简单实例
2017/01/10 Javascript
前端MVVM框架解析之双向绑定
2018/01/24 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
eslint+prettier统一代码风格的实现方法
2020/07/22 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[01:16]DOTA2小知识课堂 Ep.03 芒果树无伤肉山
2019/12/05 DOTA
python三元运算符实现方法
2013/12/17 Python
python模拟登陆Tom邮箱示例分享
2014/01/13 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
Python Excel处理库openpyxl使用详解
2019/05/09 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
python网络编程socket实现服务端、客户端操作详解
2020/03/24 Python
Python导入父文件夹中模块并读取当前文件夹内的资源
2020/11/19 Python
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
2014年母亲节寄语
2014/05/07 职场文书
教师群众路线心得体会
2014/11/04 职场文书
七年级作文之下雨天
2019/12/23 职场文书
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python