【发布时间】:2012-10-25 01:33:55
【问题描述】:
我正在使用 PHP 开发一种算法。我有大约一百万个帖子。每个帖子都有很多cmet,喜欢和观点。
例如:有 3 个帖子。
- 帖子 1 的评分是 3000(我有一个固定的公式来使用 cmets、like 和 view 计算这个结果)
- 发布 2:2000
- 帖子 3:1000
在存储这些帖子时,我使用 time();也称为 Unix 时间戳
- 发帖1次:1352099640(评分3000)
- 发帖2次:1352099660(评分2000)
- 发帖3次:1352099680(评分1000)
我有以下条件显示帖子;
- 显示评分高的帖子
- 如果帖子比其他帖子更老,但评分比其他帖子高。在最短时间排名高的帖子下方显示此类帖子。
我正在考虑两件事。
- 帖子评分高
- 发布时间。
如果帖子在最短的时间内获得高利率,那么它将是网站上的第 1 个帖子。如果 Post 在最长时间内的费率很高,那么它将是第二个帖子.. 我如何写下条件
如何在 PHP 中编写这些条件?
【问题讨论】:
-
Here is one approach。基本上有无数种可能性 - 取决于您希望最终排名如何表现(时间有多重要,帖子是否应该随时间线性衰减?...)
-
澄清一下,您的算法是否已设计和实现,您只是在寻求建议以显示您的帖子?
-
@SSK 这些评分是否考虑了时间,或者您是否要求提出一个考虑评分和时间然后决定显示帖子的顺序的系统?跨度>
-
检查我是否更新了问题