smarty循环语句使用方法介绍

作者:袖梨 2022-06-25

foreach:用于循环简单数组,它是一个选择性的section循环,它的定义格式为:

 代码如下 复制代码

{foreach from=$array item=array_id}
  {foreachelse}

{/foreach}

php文件

 代码如下 复制代码

$array[] = array("newsID"=>1, "newsTitle"=>"第1条新闻");
$array[] = array("newsID"=>2, "newsTitle"=>"第2条新闻");
$array[] = array("newsID"=>3, "newsTitle"=>"第3条新闻");
$array[] = array("newsID"=>4, "newsTitle"=>"第4条新闻");
$array[] = array("newsID"=>5, "newsTitle"=>"第5条新闻");
$array[] = array("newsID"=>6, "newsTitle"=>"第6条新闻");
$xoopsTpl->assign("newsArray", $array);

模板

 代码如下 复制代码

{foreach from=$newsArray item=array_id}
{$item.newsTitle}
{/foreach}

foreach还可以用foreachelse来匹配,用foreachelse来表示当传递给foreach的数组为空值时程序要执行的操作

section,sectionelse,/section

section里面可以带的参数如下

1,name单次循环的名称,必须有的选项
2,loop循环的变量名称,必须有的选项
3,start 循环开始的KEY值 ,默认是从第一个开始,
4,step设置循环的跳跃数,step=2将只遍历下标为0、2、4等的元素.
5,max循环的次数,默认为1,
6,show是不是显示该循环

 代码如下 复制代码

$id=array('1000','1001','1002');  
$name=array('John Smith','Jack Jones','Jane Munson');  
$address=array('253 N 45th','417 Mulberry ln','5605 apple st');  
$smarty->assign('id',$id);  
$smarty->assign('name',$name);  
$smarty->assign('address',$address);

模板

 代码如下 复制代码

<{section name=h1 loop=$name}> 
id:<{$id[h1]}> 
name:<{$name[h1]}> 
address:<{$address[h1]}> 
<{/section}> 

相关文章

精彩推荐