不用数据库或者文件的话这个值是没办法一直保存的。就算放在session里面也只是对当前用户。你是不是可以考虑使用伪随机数呢?比如根据时间戳算出一个数来?例如
$time = strtotime('2013-03-08 15:00');//如果是每个小时一次
$str = md5($time);
$int = intval(eregi_replace('[a-z]', '', $str), 10);
如果只是针对当然用户就容易多了
function fn() {
if (! empty($_SESSION['key_time'] && ! empty($_SESSION['key_value']) && date('Y-m-d H:i') == $_SESSION['key_time']) {
return $_SESSION['key_value'];
} else {
$_SESSION['key_time'] = date('Y-m-d H:i');//如果是每分钟一次,每小时的话date('Y-m-d H‘),其他时间长度自己研究吧
$_SESSION['key_value'] = rand(10000, 99999);
return $_SESSION['key_value'];
}
}
取消
评论