每天午夜根据用户时区更新数据库字段

问题描述 投票:0回答:2

我有一个表http://sqlfiddle.com/#!2/c7c85/1其中包含时区和timezone_offset字段,其中timezone_offset字段以秒为单位,我需要在午夜更新所有用户的invite_limit(当它在用户时区的午夜敲响时)根据他们的时区,我知道我可以运行一个计划在每天午夜运行的 cron 作业,它将执行一个脚本来更新数据库。 我遇到的问题是用户来自不同的时区,我需要在每个用户的午夜钟声敲响时更新字段。

php database cron
2个回答
0
投票

用户的上次访问时间戳应该可以解决这个问题。如果它早于用户的最后一个午夜时间,则重置invite_limit(如果您仅将其用于此目的,则还重置访问时间)。


0
投票

我不记得我试图应对的具体情况是什么。 再想一想,这种问题在业务逻辑层处理起来似乎会更好。

  • 一个实用程序可在午夜 @00:00 小时检查连接计数

    func(str User_time) { return User_time > NOW()}

  • 将数据重构为两个表,一个用于用户实体,另一个用于 TZ 目的

© www.soinside.com 2019 - 2024. All rights reserved.