我正在使用一個私人消息系統,我想分配一個唯一的對話號碼,以便我可以識別多個用戶是否參加同一個對話。我想指定誰發送短信+ microtime()
這樣的人的用戶名:創建一個唯一的對話號碼
$conversation_number = md5($_POST['user_id']+microtime());
請問這個代碼總是源於一個唯一的號碼,或者也有可能是,一不小心,就產生了相同數量的隨後的消息?
我正在使用一個私人消息系統,我想分配一個唯一的對話號碼,以便我可以識別多個用戶是否參加同一個對話。我想指定誰發送短信+ microtime()
這樣的人的用戶名:創建一個唯一的對話號碼
$conversation_number = md5($_POST['user_id']+microtime());
請問這個代碼總是源於一個唯一的號碼,或者也有可能是,一不小心,就產生了相同數量的隨後的消息?
我認爲PHP uniqid
足以
從PHP DOC
如果設置爲TRUE,uniqid()將增加附加熵(使用組合的線性同餘發生器)在返回值的末尾,這增加了可能性,其結果將是獨一無二的
嘗試
uniqid('id', true)
但是有大約在32位十六進制值3.402823669209387e + 38個不同的值(16^32)md5
的你的賠率是驚人的小,會有一個複製所有相同
感謝您的完整答案!+1 – mat