php - 嵌套评论背后的算法是什么?

标签 php algorithm database-design comments

我想学习Reddit背后的评论显示算法。评论如何与其 child 等相关?它们如何存储在数据库中?

让我们说

comment1
-comment2
--comment3
-comment4
--comment5
--comment6
---comment7
----comment8
comment9

如何显示在comment1之后的comment4之后的comment5?这种排序背后的想法是什么?以及如何在数据库中关联它们?

最佳答案

它被称为层次结构。每条评论要么没有父评论,要么只有一个父评论。通过这种方式,您可以显示每个“顶级”评论(由于它们没有父评论),然后显示每个评论的子评论等等。

comments 表的数据库结构可能如下所示:

  • id 字段标识单个评论,
  • parent_id被设置为 parent 的ID或未设置(设置为NULL或设置为0),
  • created - 评论创建的时间戳,
  • content - 实际评论内容,
  • 您需要的任何其他字段,

关于php - 嵌套评论背后的算法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7197860/

相关文章:

php - 使用 YouTube api 的永久访问 token ?

algorithm - 回溯设计技术的通用定义

sql - 如何为 "group by data from other rows"算法生成测试数据

c - 在 O(N) 中找到 m 个最小元素的数据结构?

java - 如何实现 "Shared database, separate schema" Multi-Tenancy 策略

mysql - 什么时候应该将数据库表拆分为两个单独的表?

mysql - 非唯一的多对多表设计

php - 正在尝试检索个人资料图片

php - 使用 PHP 解析网页内容

php - 将半动态网站与 CMS 集成