现有一字段,用来存储图片URL地址的,形式是URL|URL|URL,前台要分别显示每一张图片,方法一是直接取记录集赋值给模板,然后在前台模板调用模板标签的时候进行函数处理,不过本人觉得这样麻烦,所以采用方法二,方法一本文不予讨论,方法二就是在Select获取记录集后,重新处理一下数组,然后把记录集赋值给模板。具体代码如下:
$db = D('Order');
//获取记录集
$data = $db->Select()
//处理记录集,将多图片字段也做成数组
foreach($data as $k=>$val){
$data [$k]['Pic'] = explode("|",$val['Pic']);
}
//赋值到模板
$this->assign('list',$data);
控制器中其实用最简单的foreach遍历处理一下数组就可以了,然后就可以在模板中直接用ThinkPHP内置的标签进行调用了,如下:
<!--记录集其它字段可以直接调用如下-->
{$data.title} - {$data.create_time}
<!--Pic为多图字段,直接用foreach标签循环输出便可-->
<foreach name="data.Pic" item="vo" >
<img src="{$vo}" width="50" height="50" />
</foreach>
完毕,本文用到用到的就是 foreach 遍历数组,超简单应用,新手观看。