【问题标题】:Increment a number and reset counter on the next day增加一个数字并在第二天重置计数器
【发布时间】:2014-11-08 16:08:30
【问题描述】:

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

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

并在 24 小时后生成一个新的随机数。

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

【问题讨论】:

    标签: php random token


    【解决方案1】:

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

    您始终可以使用rand() 生成一个数字

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

    您可以将此号码保存在数据库或文件中(或 APC 等缓存机制),但您肯定需要一些东西来存储该号码。

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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 2020-08-18
        • 2015-10-10
        • 1970-01-01
        • 2019-11-15
        • 1970-01-01
        • 2016-09-02
        • 2013-02-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多