php中的uniqid雖然是生成唯一的值,但是因為是基于當前時間以微秒同時在多個服務器,所以當運行uniqid時可能會產生相同的值。
此問題可以通過應用前綴(prefix)指定一個參數從而避免。它是使用rand函數為前綴指定一個隨機值。
此外,它可用于上傳圖像和文件,例如在保存上傳文件時生成文件名。
注意,uniqid容易受到密碼系統的攻擊,因此不要將其用作密碼!
uniqid的使用方法
第一個參數是前綴。
第二個參數指定是否增加要生成的字符數的true/false。默認情況下,第二個參數為false,生成的字符數為13個字符。
我們來看uniqid具體的寫法
1、確認由于第一引數的有無而不同。
echo uniqid(); // 生成13個字符的字符串echo uniqid(""""); // 指定參數為空,返回的字符串長度也為13echo uniqid(""prefix_""); // 生成13個字符的字符串輸出到“prefix_”
2、設置第二個參數
echo uniqid("""", false); //生成13個字符的字符串echo uniqid(""prefix_"", false); // 在“prefix_”之后,輸出由13個字符生成的字符串echo uniqid("""", true); // 生成23個字符的字符串echo uniqid(""prefix_"", true); // 在“prefix_”之后,輸出由23個字符生成的字符串
3、考慮在多個服務器上并發執行
echo uniqid(rand().'_'); // 在“rand()_”之后輸出由13個字符生成的字符串
本篇文章到這里就全部結束了,更多精彩內容大家可以關注 其他欄目教程!??!
以上就是如何使用php中uniqid函數生成唯一的id的詳細內容,更多請關注 其它相關文章!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答