通过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; }
原文地址:http://blog.csdn.net/xiaokfc/article/details/46816659