thinkPHP框架实现的无限回复评论功能示例


Posted in PHP onJune 09, 2018

本文实例讲述了thinkPHP框架实现的无限回复评论功能。分享给大家供大家参考,具体如下:

如果只是简单的单回复的评论的话,那样操作是很简单的。但问题就是如何实现无限的回复评论呢!那么如果只是单回复的话,需要建好多的数据表,是根本不可能实现的。那么用TP框架实现无限回复评论(GitHub源代码下载地址:https://github.com/Jonybin/responsemessage)下载完成后,注意数据库的使用。

control控制器部分:

function CommentList($pid = 0, &$commentList = array(), $spac = 0) {
    static $i = 0;
    $spac = $spac + 1; //初始为1级评论
    $List = M('comment')->
        field('id,add_time,author,content,pid')->
        where(array('pid' => $pid))->order("id DESC")->select();
    foreach ($List as $k => $v) {
      $commentList[$i]['level'] = $spac; //评论层级
      $commentList[$i]['author'] = $v['author'];
      $commentList[$i]['id'] = $v['id'];
      $commentList[$i]['pid'] = $v['pid']; //此条评论的父id
      $commentList[$i]['content'] = $v['content'];
      $commentList[$i]['time'] = $v['add_time'];
      // $commentList[$i]['pauthor']=$pautor;
      $i++;
      $this->CommentList($v['id'], $commentList, $spac);
    }
    return $commentList;
}

view视图部分:

<volist name="commentList" id="vo">
 <eq name="vo.pid" value="0"><hr class="solidline"/><else/><hr class="dottedline"/></eq>
 <div class="commentList " style="padding-left:{$vo['level']-1}cm">
   <div><span class="user">
   <if condition="($vo.pauthor eq NULL)">{$vo.author}
  <else /> {$vo.author}<span class="black" style="color: #000101">回复</span>{$vo.pauthor}
   </if>
 </span><a class="hf" id="{$vo.id}" style="float: right">回复</a><span class="hftime">{$vo.time|date="Y-m-d",###}</span></div>
   <div class="content">{$vo.content|reFace}</div>
 </div>
</volist>

完整实例代码可点击此处本站下载

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
一步一步学习PHP(4) php 函数 补充2
Feb 15 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
PHP Undefined index报错的修复方法
Jul 17 PHP
php模拟ping命令(php exec函数的使用方法)
Oct 25 PHP
php实现aes加密类分享
Feb 16 PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 PHP
yii2带搜索功能的下拉框实例详解
May 12 PHP
Yii2基于Ajax自动获取表单数据的方法
Aug 10 PHP
Yii2创建多界面主题(Theme)的方法
Oct 08 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
Sep 16 PHP
php实现的支付宝网页支付功能示例【基于TP5框架】
Sep 16 PHP
laravel 实现向公共模板中传值 (view composer)
Oct 22 PHP
ThinkPHP5框架实现简单的批量查询功能示例
Jun 07 #PHP
PHP 实现手机端APP支付宝支付功能
Jun 07 #PHP
Laravel程序架构设计思路之使用动作类
Jun 07 #PHP
laravel手动创建数组分页的实现代码
Jun 07 #PHP
thinkPHP框架实现生成条形码的方法示例
Jun 06 #PHP
使用PHP访问RabbitMQ消息队列的方法示例
Jun 06 #PHP
PHP简单实现记录网站访问量功能示例
Jun 06 #PHP
You might like
杏林同学录(九)
2006/10/09 PHP
JS与PHP向函数传递可变参数的区别实例代码
2011/05/18 PHP
php更新修改excel中的内容实例代码
2014/02/26 PHP
浅析PHP编程中10个最常见的错误
2014/08/08 PHP
php简单实现快速排序的方法
2015/04/04 PHP
php实现只保留mysql中最新1000条记录
2015/06/18 PHP
PHP判断JSON对象是否存在的方法(推荐)
2016/07/06 PHP
php中的单引号、双引号和转义字符详解
2017/02/16 PHP
Javascript miscellanea -display data real time, using window.status
2007/01/09 Javascript
浅谈Javascript鼠标和滚轮事件
2012/06/27 Javascript
jquery中获取元素里某一特定子元素的代码
2014/12/02 Javascript
使用jQuery实现星级评分代码分享
2014/12/09 Javascript
浅谈JavaScript中运算符的优先级
2015/07/07 Javascript
javascript检测移动设备横竖屏
2016/05/21 Javascript
谈谈JavaScript的New关键字
2016/08/26 Javascript
jQuery树形插件jquery.simpleTree.js用法分析
2016/09/05 Javascript
JavaScript模仿Pinterest实现图片预加载功能
2016/10/25 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
浅析Vue 和微信小程序的区别、比较
2018/08/03 Javascript
antd-DatePicker组件获取时间值,及相关设置方式
2020/10/27 Javascript
Python使用稀疏矩阵节省内存实例
2014/06/27 Python
python实现unicode转中文及转换默认编码的方法
2017/04/29 Python
利用PyCharm Profile分析异步爬虫效率详解
2019/05/08 Python
python的pygal模块绘制反正切函数图像方法
2019/07/16 Python
python函数的万能参数传参详解
2019/07/26 Python
Python3如何在Windows和Linux上打包
2020/02/25 Python
英国皇家造币厂:The Royal Mint
2018/10/05 全球购物
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明
2012/12/05 面试题
实验教师岗位职责
2014/02/13 职场文书
平安校园建设方案
2014/05/02 职场文书
少先队活动总结
2014/08/29 职场文书
勿忘国耻9.18演讲稿(经典篇)
2014/09/14 职场文书
答谢酒会主持词
2015/07/02 职场文书
Django框架中视图的用法
2022/06/10 Python