gpt4 book ai didi

php - 限制特定对象一小时内显示数量的最佳方法?

转载 作者:行者123 更新时间:2023-11-29 14:25:02 25 4
gpt4 key购买 nike

我正在开发一个用 php 编写的 Web 应用程序。我在 mysql 表中有一些对象(表示为行)。我需要在一天中随机展示它们。

如何限制特定对象的显示次数,例如一小时内不超过 10 次?

通过显示计数,我的意思是对象被渲染了多少次。

例如,有 100 张图像,每个浏览量随机显示 5 张图像。我需要通过将图像的显示次数限制为一小时来标准化图像显示分布,以防止一张图像显示 1000 次,另一张图像显示 3 次。

希望它的解释有用。

最佳答案

最简单的方法可能是添加一个名为 last_shown 的字段到您的表格,然后将其从候选列表中排除(如果它在一小时内显示)。例如:

SELECT id FROM my_objects WHERE last_shown < DATE_SUB(NOW(), INTERVAL 1 HOUR) ORDER BY RAND() LIMIT 1

然后,当您显示该实际对象时,为该列添加时间戳,即:

UPDATE my_objects SET last_shown = NOW() WHERE id = <the_id_you_displayed>

这种方法更简单,但同样有效。如果您将时间范围减少到每 6 分钟一次,则实际上与“一小时内 10 次”的逻辑类似,并且不需要整个新的引用表。

关于php - 限制特定对象一小时内显示数量的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11151814/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com