加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

smarty中常用方法实例总结

发布时间:2020-12-13 02:49:05 所属栏目:PHP教程 来源:网络整理
导读:《:smarty中常用方法实例总结》要点: 本文介绍了:smarty中常用方法实例总结,希望对您有用。如果有疑问,可以联系我们。 本文实例总结了smarty中常用办法.供大家参考研究.具体如下: PHP实例 1. Smarty中foreach的index、iteration的使用 PHP实例 .

《:smarty中常用方法实例总结》要点:
本文介绍了:smarty中常用方法实例总结,希望对您有用。如果有疑问,可以联系我们。

本文实例总结了smarty中常用办法.分享给大家供大家参考.具体如下:PHP实例

1. Smarty中foreach的index、iteration的使用PHP实例

.index包含当前数组索引,从零开始.PHP实例

index示例PHP实例

{* The header block is output every five rows *}
{* 每五行输出一次头部区块 *}
<table>
{foreach from=$items key=myId item=i name=foo}
  {if $smarty.foreach.foo.index % 5 == 0}
   <tr><th>Title</th></tr>
  {/if}
  <tr><td>{$i.label}</td></tr>
{/foreach}
</table>

.iteration包含当前循环次数,与index不同,从1开始,每次循环增长1.PHP实例

iteration和index示例PHP实例

{* this will output 0|1,1|2,2|3,... etc *}
{* 该例将输出0|1,... 等等 *}
{foreach from=$myArray item=i name=foo}
{$smarty.foreach.foo.index}|{$smarty.foreach.foo.iteration},{/foreach}

2. smarty中section的嵌套使用PHP实例

示例1:PHP实例

$bookmarks = array('0' => array('name'=> 'n1','url'=>'url2'),'1' => array('name'=> 'n21','url'=>'url22'));
$categories= array('0' => array('cate_id'=> 'n1','cate_name'=>'url2'),'1' => array('cate_id'=> 'n21','cate_name'=>'url22'));
{section name='bm' loop=$bookmarks}
 Name:$bookmarks[bm].name
 URL:$bookmarks[bm].url
  {section name='cate' loop=$categories[bm]}
     $categories[bm][cate].cate_id
     $categories[bm][cate].cate_name
  {/section}
{/section}
::::

示例2:PHP实例

$lists = array();
for(...){
  $oneList['dateTime'] = date("Y-m-d");
  $oneList['detailList'] = array();
  for(....){
    $oneList['detailList'][$j]['count'] = $onecout;
    $oneList['detailList'][$j]['title'] = $onetitle;
  }
  $lists[] = $oneList;
}
:::::
{section name=loop loop=$lists}
  {$lists[loop].dateTime}
  {section name=loop2 loop=$lists[loop]["detailList"]}
    {$lists[loop]['detailList'][loop2].title}
    {$lists[loop]["detailList"][loop2].count}
  {/section}
{/section}

3. 其他常用关键字 PHP实例

<{section loop= $varName[,start=$start,step=$setp,max=$max,$show=true]}>PHP实例

??? name: section的名称,不用加$;
??? $loop: 要循环的变量,程度中要使用assign对这个变量进行操作.
??? $start: 开始循环的下标.默认为0;
??? $step: 每次循环下标的增数;
??? $show : boolean型.决定是否对于这块进行显示.默认为true;PHP实例

<{section}>的属性;PHP实例

??? index:循环下标.默认为0;
??? index_prev:当前下标的上一个值,默认为-1;
??? index_next:当前下标的下一个值,默认为1;
??? first:是否为第一下循环;
??? last:是否为最后一个循环;
??? iteration:循环个数;
??? rownum:当前行号,iteration的别名;
??? loop:最后一个循环号.Section的循环次数;
??? show:是否显示;PHP实例

<{section loop=$News}>
   新闻编号:<{$News[loop].newID}><br>
   新闻内容:<{$News[loop].newTitle}><br>
<{sectionelse}>
   I am sorry
<{/section}>

if用法:PHP实例

{if $list[row].name eq "1"}
  星期1
{elseif $list[row].name=="2"}
  星期2
{else}
  默认
{/if}

4. smarty 系统变量 PHP实例

{* 显示URL中的page值($_GET)http://www.example.com/index.php?page=foo *}
{$smarty.get.page}
{* 显示来自一个表单的"page"变量($_POST['page'])*}
{$smarty.post.page}
{* 显示COOKIE变量"username"的值($_COOKIE['username'])*}
{$smarty.cookies.username}
{* 显示服务器变量"SERVER_NAME"($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}
{$smarty.server.PHP_SELF}
{$smarty.server.SCRIPT_NAME}
{* 显示系统环境变量"PATH" *}
{$smarty.env.PATH}
{* 显示PHP会话变量"id"($_SESSION['id'])*}
{$smarty.session.id}
{* 显示变量"username",不论来自get/post/cookies/server/env *}
{$smarty.request.username}
$smarty}保留变量可以被用于访问一些特殊的模板变量,以下是全部页面哀求变量.PHP实例

以下是访问页面哀求变量诸如get,post,cookies,server,enviroment和session变量的例子. 例如{$smarty.server.SERVER_NAME}取得服务器变量,{$smarty.env.PATH}取得系统环境变量path,{$smarty.request.username}取得get/post/cookies/server/env的复合变量.PHP实例

{$smarty.now}变量用于拜访当前时间戳.
可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}PHP实例

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

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

{$smarty.config}
{$smarty}变量 可以拜访已经加载的config变量.PHP实例

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

{$smarty.section},{$smarty.foreach}
{$smarty} 变量可以拜访'section'和'foreach'循环的属性.
{$smarty.template}
显示当前被处理的模板的名字.
{$smarty.version}
显示smarty模板的版本
{$smarty.ldelim}
显示左分隔符
{$smarty.rdelim}PHP实例

显示右分隔符$smarty}保留变量可以被用于访问一些特殊的模板变量,{$smarty.request.username}取得get/post/cookies/server/env的复合变量.PHP实例

{$smarty.now}变量用于拜访当前时间戳.
可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}
{$smarty.const}PHP实例

你可以直接拜访PHP常量. 例如{$smarty.const._MY_CONST_VAL}
{$smarty.capture}
可以通过{capture}..{/capture}结构 截取的输出可以使用{$smarty} 变量拜访.
{$smarty.config}
{$smarty}变量 可以拜访已经加载的config变量.
例如 {$smarty.config.foo}就可以表示 {#foo#}.
{$smarty.section},{$smarty.foreach}
{$smarty} 变量可以拜访'section'和'foreach'循环的属性.
{$smarty.template}
显示当前被处理的模板的名字.
{$smarty.version}
显示smarty模板的版本
{$smarty.ldelim}
显示左分隔符
{$smarty.rdelim}
显示右分隔符PHP实例

希望本文所述对大家基于smarty模板的php程序设计有所赞助.PHP实例

欢迎参与《:smarty中常用方法实例总结》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读