曼波dede 模板变量里有很多php代码,以及php变量,但我不知道它们的各自功能啊

PHP模板引擎Smarty中的保留变量用法分析
作者:ruxingli
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了PHP模板引擎Smarty中的保留变量用法,较为详细的分析说明了Smarty中的保留变量的功能与具体使用方法,需要的朋友可以参考下
本文实例讲述了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模板的PHP程序设计有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具帝国cms(1)
帝国所有模板均可使用php代码对字段内容进行灵活处理,唯独列表模板list.var不支持使用程序代码,为了使帝国模板制作更加完美、满足各种需求,帝国v6.0新增了list.var支持程序代码功能,列表模板、标签模板(ecmsinfo标签调用)与搜索模板list.var均可使用php代码对字段内容进行验证或任意处理再输出,使信息列表显示效果更加强大灵活。今天我们要讲解此功能的使用:
实现要点:
1、增加模板时list.var模板需要勾选“使用程序代码”选项。如图:
2、直接添加PHP代码,不需要加&?和?&程序开始和结束标记。
3、字段值数组变量为$r,对应的字段变量为$r[字段名],如:标题字段变量就是$r[title]。另外编号变量为$no
4、将最终模板内容赋给$listtemp变量。
5、列表页信息的升序/降序在栏目的生成选项里面设置
list.var模板范例:
例子1:如果信息没有设置标题图片就显示指定的图片。
if(empty($r[titlepic]))
& & && $r[titlepic]='/images/img.gif';
$listtemp='&li&&ahref=&/ecms/jianjie/15.html&&&imgsrc=&[!--titlepic--]&&&/a&&/li&';
说明:$r[titlepic]为标题图片字段变量。$listtemp为模板内容变量。
例子2:如果信息是今天发布的就显示“NEW”图片标识。
$newimg='';
if(time()-$r[newstime]&=1*24*3600)
& & && $newimg='&img src=&NEW图片地址&border=&0&&';
$listtemp='&li&&ahref=&/ecms/jianjie/15.html&&[!--title--]&/a&'.$newimg.'&/li&';
说明:$r[newstime]为发布时间字段变量。$listtemp为模板内容变量。
例子3:调用投稿用户的公司名称。
$userr=$empire-&fetch1(&select company from{$dbtbpre}enewsmemberadd where userid='$r[userid]' limit1&);
$listtemp='&li&&ahref=&/ecms/jianjie/15.html&&[!--title--]&/a&&span&公司名称:'.$userr[company].'&/span&&/li&';
说明:$r[userid]为发布者用户ID字段变量。$listtemp为模板内容变量。
其他说明:
如果$listtemp引用模板内容是用单引号,那么里面使用单引号前面要加\,例如:$listtemp='&imgsrc=\'[!--titlepic--]\'&';
相反如果引用模板内容是用双引号,那么里面使用双引号前面也要加\,例如:$listtemp=&&imgsrc=\&[!--titlepic--]\&&&;
支持程序代码可以实现很多非常复杂的应用需求,上面只是举了几个简单的例子,更多需要用户去实践。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2208次
排名:千里之外
(5)(1)(1)(1)(2)(1)(2)(1)2014年4月 PHP大版内专家分月排行榜第二2014年3月 PHP大版内专家分月排行榜第二2014年3月 Web 开发大版内专家分月排行榜第二2014年2月 PHP大版内专家分月排行榜第二
2014年4月 Web 开发大版内专家分月排行榜第三
2014年4月 PHP大版内专家分月排行榜第二2014年3月 PHP大版内专家分月排行榜第二2014年3月 Web 开发大版内专家分月排行榜第二2014年2月 PHP大版内专家分月排行榜第二
2014年4月 Web 开发大版内专家分月排行榜第三
2017年3月 PHP大版内专家分月排行榜第三2016年12月 PHP大版内专家分月排行榜第三2016年11月 PHP大版内专家分月排行榜第三2014年10月 PHP大版内专家分月排行榜第三2014年8月 PHP大版内专家分月排行榜第三2014年3月 PHP大版内专家分月排行榜第三2014年1月 PHP大版内专家分月排行榜第三2012年8月 PHP大版内专家分月排行榜第三2012年2月 PHP大版内专家分月排行榜第三2012年1月 PHP大版内专家分月排行榜第三2011年12月 PHP大版内专家分月排行榜第三2011年11月 PHP大版内专家分月排行榜第三2011年6月 PHP大版内专家分月排行榜第三
2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。}

我要回帖

更多关于 dede 模板变量 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信