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数字转汉字代码(算法)
Oct 08 PHP
关于PHP递归算法和应用方法介绍
Apr 15 PHP
PHP计数器的实现代码
Jun 08 PHP
PHP编程风格规范分享
Jan 15 PHP
浅析php工厂模式
Nov 25 PHP
优化WordPress中文章与评论的时间显示
Jan 12 PHP
php+flash+jQuery多图片上传源码分享
Jul 27 PHP
laravel 5.4中实现无限级分类的方法示例
Jul 27 PHP
PHP实现Huffman编码/解码的示例代码
Apr 20 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
Feb 12 PHP
基于PHP的微信公众号的开发流程详解
Aug 07 PHP
php redis setnx分布式锁简单原理解析
Oct 23 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
apache+php完美解决301重定向的两种方法
2011/06/08 PHP
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
2011/12/05 PHP
destoon利用Rewrite规则设置网站安全
2014/06/21 PHP
PHP的swoole扩展安装方法详细教程
2016/05/18 PHP
php中file_get_contents()函数用法实例
2019/02/21 PHP
JS模拟多线程
2007/02/07 Javascript
javascript+xml技术实现分页浏览
2008/07/27 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
通用无限极下拉菜单的实现代码
2016/05/31 Javascript
jQuery的ajax和遍历数组json实例代码
2016/08/01 Javascript
微信小程序 122100版本更新问题解决方案
2016/12/22 Javascript
[20:57]Ti4主赛事第三天开幕式
2014/07/21 DOTA
python实现的登陆Discuz!论坛通用代码分享
2014/07/11 Python
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
Python基于动态规划算法解决01背包问题实例
2017/12/06 Python
python 显示数组全部元素的方法
2018/04/19 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
2019/01/07 Python
python super用法及原理详解
2020/01/20 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
jupyter notebook指定启动目录的方法
2021/03/02 Python
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
2016/11/16 HTML / CSS
Lampegiganten丹麦:欧洲领先的照明网上商店
2018/04/25 全球购物
JPA的特点
2014/10/25 面试题
大学生创业感言
2014/01/25 职场文书
机关门卫的岗位职责
2014/04/29 职场文书
社会实践的活动方案
2014/08/22 职场文书
师德师风整改措施
2014/10/24 职场文书
现场施工员岗位职责
2015/04/11 职场文书
2015年度信用社工作总结
2015/05/04 职场文书
法院执行局工作总结
2015/08/11 职场文书
社区服务活动感想
2015/08/11 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
Nginx快速入门教程
2021/03/31 Servers
一文帮你理解PReact10.5.13源码
2021/04/03 Javascript
纯html+css实现Element loading效果
2021/08/02 HTML / CSS