在php Web环境中设置全局计时器

时间:2012-12-17 08:51:30

标签: php

我正在尝试在PHP中创建一个函数来计算所有用户使用函数的次数。

如果使用了这个函数,比方说,30次,则应该阻止访问几分钟,然后将计数器重置为0.

这可以在PHP中使用吗?

2 个答案:

答案 0 :(得分:2)

如果所有用法都在一个过程中进行,那么这不是问题,即使是微不足道的。您只需使用全局或静态计数器变量并递增它。只要进程正在运行,您就可以访问该值。

但是我假设你在谈论一个web环境,php函数是http服务器执行的脚本的一部分?对不起,但你没有提到......

在这种情况下,事情变得更加复杂,因为它不再是一个单一的过程。您需要某种持久存储。典型方案使用数据库,文件或共享内存。这些允许不同的进程访问共享计数器值。

答案 1 :(得分:1)

如果您仍然使用数据库,我会说最简单的方法是在数据库表中增加一个值。您还可以在同一步骤中存储时间戳。之后,下一个调用函数可以轻松读取(递增的)值。如果您没有数据库,也可以使用文本/ XML文件。