首頁  >  文章  >  後端開發  >  關於用thinkPHP框架實現無限回應評論的功能代碼

關於用thinkPHP框架實現無限回應評論的功能代碼

不言
不言原創
2018-06-09 09:22:432556瀏覽

這篇文章主要介紹了thinkPHP框架實現的無限回復評論功能,結合實例形式簡單分析了thinkPHP實現無限回复的相關控制器、視圖操作技巧,需要的朋友可以參考下

本文實例講述了thinkPHP框架實現的無限回應評論功能。分享給大家供大家參考,具體如下:

如果只是簡單的單回覆的評論的話,那樣操作是很簡單的。但問題就是如何實現無限的回覆評論呢!那麼如果只是單回覆的話,需要建造好多的資料表,是根本不可能實現的。那麼用TP框架實現無限回覆評論,注意資料庫的使用。

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>
 <p class="commentList " style="padding-left:{$vo[&#39;level&#39;]-1}cm">
   <p><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></p>
   <p class="content">{$vo.content|reFace}</p>
 </p>
</volist>



### ###以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網! ######相關建議:#########thinkphp框架下實作登入、註冊、找回密碼的功能代碼###############關於ThinkPhp框架表單驗證和ajax驗證問題的分析############################

以上是關於用thinkPHP框架實現無限回應評論的功能代碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn