volist嵌套使用
1、重要特性是如果volist的name对应一个数组,则它会把数组遍历一遍。
例如
<volist name="comments" id="vo">
XXX
</volist>
而
$comments[0]=$comment1;
$comments[1]=$comment2;
则上面代码会先把$comment1当成vo把代码XXX执行一遍;
然后再把$comment2当成vo再把XXX执行一遍。
所以画评论框时只要上面一段代码,它就会自动把所有评论框都画出来。
2、如果嵌套,如下方法来获取嵌套内容
$comments[0]=$comment1; $comments[1]=$comment2; $comment1["id"]=1; $comment1["content"]="评论内容"; $comment1["replies"]=$replies; $replies[0]=$reply1; $replies[1]=$reply2; $reply1["name"]="dd"; $reply2["name"]="mm";
获取reply1和reply2的name值的方法:
<volist name="comments" id="vo"> <volist name="vo['replies']" id="sub"> {sub.name} </volist> </volist>
由于comments和replies均为数组,故会进行两次自动遍历。
先comments1,然后reply1输出dd;然后reply2输出mm;
然后comments2,由于此处comments2里面没有replies,故不输出。
开课吧的评论系统
我的