小技巧收錄 唯一ID

2021-09-02 13:42:05 字數 656 閱讀 9299

在遊戲開發中,角色id或者公會id等都需要做唯一設計,是考慮到不同平台,不同伺服器,方便以後合服。

通過平台id,伺服器id,可以唯一確定乙個伺服器標識(可以考慮的遊戲實際情況,設定伺服器id和平台id的大小)

唯一key就是乙個累加器,每建立乙個玩家+1,這樣就可以唯一標識每個玩家id

[color=blue]平台id(platid)伺服器id(serverid)唯一key(uniquekey)[/color]

id設計總共43位,高10位為platid 中間10位為serverid 低23位為uniquekey,如下:

1 10 20 43

|----------|----------|-------------------|

10位 10位 23位

platid最大值 = 2^10 - 1 = 1023

serverid最大值 = 2^10 - 1 = 1023

uniquekey最大值 = 2^23 - 1 = 8388607

唯一id = (platid bsl 33) bor (serverid bsl 23) bor uniquekey

php 生成唯一ID

function guid factor prefix suffix 生成因子 機器毫秒,使用者瀏覽器與作業系統資訊,使用者ip,隨機因子,及自定義 factor 因子 原理 自定義 factor 因子 例如可使用使用者 user id 模組標識 product,order.字首 prefix 可用...

php生成唯一id

網上查了下,有很多的方法 1 md5 time mt rand 1,1000000 這種方法有一定的概率會出現重複 2 php內建函式uniqid uniqid 函式基於以微秒計的當前時間,生成乙個唯一的 id.w3school參考手冊有一句話 由於基於系統時間,通過該函式生成的 id 不是最佳的。...

MySql唯一ID生成

前陣子,一直在折騰阿里雲。寫的一些文章也放到自己的wordpress部落格上了。但自己前陣子在做系統更換操作的時候未備份磁碟,大部分心血付諸東流。真是乙個悲傷的故事。現在決定用.net搞搞自己的部落格。正好把wordpress給拋棄掉。言歸正傳,這個唯一號類似自增id,自增id雖然好用,但進行資料庫...