小編給大家分享一下使用PHP如何實現(xiàn)類似“暢言”等評論系統(tǒng),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
參考“多說”和“暢言”等評論系統(tǒng),自己使用PHP語言實現(xiàn)了一個簡單的評論系統(tǒng)。并記錄了兩種方式(遞歸方式和非遞歸方式)的實現(xiàn)過程,以及分析兩種方式的優(yōu)缺點,前端如何實現(xiàn)沒有展現(xiàn)。
首先設計數(shù)據(jù)庫如下:
創(chuàng)建測試數(shù)據(jù)如下:
具體實現(xiàn)方案如下(在ThinkPHP框架上實現(xiàn)):
1、遞歸方式
優(yōu)點:實現(xiàn)代碼簡單,而且如果評論的層級固定在5個層次以下的話,建議使用該種方法,這樣前端通過這種數(shù)據(jù)結果實現(xiàn)簡單。
缺點:如果評論的層級沒有固定的話,前端將無法展示評論信息了,而且如果層級太多的話,將會極大的消耗內存,更要命的是每次遞歸都得查詢數(shù)據(jù)庫,性能將大大的降低。
部分數(shù)據(jù)展示如下:
2、非遞歸方式(堆棧方式實現(xiàn))
優(yōu)點:只查詢一次數(shù)據(jù)庫,性能較好??梢詫崿F(xiàn)n層級的評論,前端也能很好的展示
缺點:代碼稍微復雜,對于固定的層級評論,前端展示評論較為復雜。
數(shù)據(jù)展示效果如下:
以上是使用PHP如何實現(xiàn)類似“暢言”等評論系統(tǒng)的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!