redis实现发号器

原创
2016-08-08 09:21:18 1682浏览

通过mysql的auto increment自增id值可能会泄漏一些敏感的数据。

例如用户表的user_id是自增的,在url中显示的id值可能就泄露了网站真实的用户数。

下面代码通过php及redis的incrby实现简单的发号器,代码如下:

function get_id($type, $server_ip, $server_port, $key) {
    $init_num = 0;
    $redis= new Redis();
    $redis->connect($server_ip, $server_port);
    $var = $redis->exists($key);
    if($var == 0) {
        $redis->set($key,$init_num);
    }
    $incr_num = rand(1,50); //增量为随机数
    $var = $redis->incrby($key, $incr_num);
    $redis->close();
    return $var;
}

以上就介绍了redis实现发号器,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。