增加一个数字,并在第二天重置计数器


Increment a number and reset counter on the next day

如何在PHP中一天开始时生成一个4位数的随机数,并在每次执行脚本时递增。然后在24小时后重置计数器。我不想保存一些外部文件或数据库的随机数。那么,是否可以在不将其保存到某个文件的情况下实现这一点?

就像我现在生成了一个数字day 2346一样,每次执行我的ph脚本时,它的增量为345745685679,如果达到9999,则循环到0000

并且在24小时之后生成新的随机数。

我这样做是为了展示一些会话令牌漏洞。

好吧,这取决于想要完成什么。(会话令牌漏洞?)

您总是可以使用rand()生成一个数字

如果你不想保存它,你可以创建一个公式来计算每天的新数字,但它不再是随机的。

您可以将这个数字保存在数据库或文件中(或者像APC这样的缓存机制),但您肯定需要一些东西来存储这个数字。

如果您需要每个用户一个号码,您可以使用会话存储($_session),尽管从技术上讲,在大多数情况下,会话是一个文件;)

您可以存储数字和生成日期。在一天中,你会像已经在做的那样递增,然后如果日期已经过去(在递增之前你会检查一下),你会为新的一天生成一个新的随机数。

不过,我对你的演示很好奇:-)