在ThinkPHP开拓中我们常常会用到模板输出,比如说在模板中输出记录集等,个中ThinkPHP中有个自带的模板遍历标签 volist ,常日我们可以用 volist 标签去遍历记录,当然在实际开拓中,我们可能会用到这样的场景,比如说头条网站的评论功能,如下图:
为了演示,我就随便从头条文章里截了个评论区的图片,从上图可以看到,一个是楼主的评论,还有其他网友回答楼主的评论。这里涉及到两次遍历,我们先要输出楼主对文章的评论,然后再输出其他网友对楼主的回答,下面我们就先输出楼主对文章的评论。
查询语句:

模板 volist 遍历:
这样就把楼主对文章的评论输出来了,那么其他网友对楼主的回答要怎么输出呢,从头条的评论区截图中可以看到,其他网友对楼主的回答是在楼主的下面,也便是说,我们要在输出楼主对文章评论的时候就去查询有没有网友对楼主的回答,如果有就输出,没有就不输出。
由于ThinkPHP查询记录的时候返回的结果是数组形式的,那么我们要实现查询楼主对文章评论的同时查询网友对楼主的回答可以这样写:
从上面的查询语句中可以看到,我们在查询楼主对文章回答的时候,利用 foreach 方法进行了一次遍历,然后去获取楼主id,再按获取的楼主id去查询网友对楼主的回答,再把查询到的结果保存到 reply 这个数组中,那我们在模板中就这样输出:
这样就利用 volist 标签实现了类似头条评论的效果。
感激你的阅读,如果你有更好的方法或在运用过程中碰着问题可以在评论区提问或者直接私信我,我会定期回答,码农刘小桥与你一起学习,共同进步。