数据循环

一、loop写法

php模板循环中,最常见的循环就是foreach了,简单高效使php程序里大量运用了foreach,这里我们就模板里的循环进行解说。在php模板中,循环被改装成对称的loop 和 /loop 模式,代码:

<!-- loop from=$rslist key=$key value=$value [id=rslist_id] -->
...
<!-- /loop -->

参数解析:

from,数据来源

key,给数组下标附一个变量

value,值

id,给数组from里信息增加属性,这里提供了三个属性

  1. num,当前数量,从1开始计起

  2. index,当前索引,从0开始计起

  3. total,当前数组数量

示例1:在文章列表中常用到的循环

<!-- loop from=$rslist key=$key value=$value -->
<li>
    <a href="{$value.url}" title="{$value.title}">
        <span class="date">{func date Y-m-d $value.dateline}</span>
        {$value.title}
    </a>
</li>
<!-- /loop -->

示例2、在导航菜单中常用到的循环(这里用到了id里的num和total属性

<!-- php:$list = phpok("menu") -->(获取后台数据调用中心参数menu的数据)
<!-- loop from=$list key=$key value=$value id=list_id -->
<li {if $list_id.num == 1} class="selected"{/if}>
    <a href="{$value.url}" title="{$value.title}" target="{$value.target}" class='alink'>{$value.title}</a>
    {if $list_id.num != $list_id.total} | {/if}
</li>
<!-- /loop -->


二、foreach写法

在phpok模板中,仍然支持旧版的循环写法,甚至支持php写法,功能和上述loop是一样的,不过没有id属性

 

<!-- $rslist AS $key=>$value -->
<li><a href="{$value.url}" title="{$value.title}">{$value.title}</a></li>
<!-- end -->

 

或者如下编写:

<!-- $rslist AS $key=>$value -->
<li><a href="{:$value[url]}" title="{:$value[title]}">{:$value[title]}</a></li>
<!-- end -->


没有找到答案?

您可以通过留言获取更多帮助。也可以通过社区提交相关问题。

留言 开发者社区
论坛咨询