如何在PHP中基于开始时间创建时间间隔


How to create an interval of times in PHP based on a start time?

我想知道如何给定一个开始时间,我可以计算一系列的时间间隔,并在那段时间内执行代码。

例如:我在下午3:30开始,有4,45分钟的间隔需要根据开始时间计算。然后在下午3点到下午3点45分之间,我希望能够检查当前时间是否在该跨度之间,然后执行代码块,如果是的话。

要点:一家公司想要在3小时的时间内发放20张礼品卡。他们想每45分钟只发5个。

任何想法都会很感激。

正如Walkerneo所说,这样做的最好方法是在服务器上使用cron作业,并可能将礼品卡的数据存储在MySQL中,当cron运行php时将检查函数…

另一种(非常糟糕的)方法是在你的php文件中保持一个循环来检查是否该发送礼品卡,但这是一个非常非常糟糕的主意,因为服务器的CPU使用率很高…

如果你想在用户打开页面或购买东西时给予礼品卡,这很容易,只需在MySQL中设置一个表,其中包含用户可以获得礼品卡的时间跨度,然后当我们提交购买或检查表单时,PHP应该去表并检查您是否在任何时间跨度。