php中怎么生成不重復(fù)的標(biāo)識(shí)符,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
使用PHP uniqid()函數(shù),該函數(shù)可用于生成不重復(fù)的標(biāo)識(shí)符,基于微秒級(jí)當(dāng)前時(shí)間戳。但是在高并發(fā)或者間隔時(shí)長(zhǎng)極短(如循環(huán)代碼)的情況下,會(huì)出現(xiàn)大量重復(fù)數(shù)據(jù)。即使使用了第二個(gè)參數(shù),也會(huì)重復(fù),好的方案是結(jié)合 md5 函數(shù)來(lái)生成 ID。
語(yǔ)法:
string uniqid ([ string $prefix = "" [, bool $more_entropy = false ]] )
獲取一個(gè)帶前綴、基于當(dāng)前時(shí)間微秒數(shù)的 ID。prefix 有用的參數(shù)。
例如:如果在多臺(tái)主機(jī)上可能在同一微秒生成 ID。prefix 為空,則返回的字符串長(zhǎng)度為 13。moreentropy 為 TRUE,則返回的字符串長(zhǎng)度為 23。moreentropy 如果設(shè)置為 TRUE,uniqid() 會(huì)在返回的字符串結(jié)尾增加額外的煽(使用 combined linear congruential generator)。使得 ID 更具性。
關(guān)于php中怎么生成不重復(fù)的標(biāo)識(shí)符問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。