首頁 >後端開發 >php教程 >redis實作發號器

redis實作發號器

WBOY
WBOY原創
2016-08-08 09:21:182062瀏覽

透過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