首頁  >  文章  >  後端開發  >  如何使用php中uniqid函數產生唯一的id

如何使用php中uniqid函數產生唯一的id

不言
不言原創
2018-12-26 14:26:194674瀏覽

如何使用php中uniqid函數產生唯一的id中的uniqid是一個根據目前時間產生唯一值(ID)的函數,接下來的這篇文章我們就來詳細介紹如何使用php中uniqid函數產生唯一的id中uniqid函數產生唯一的id的方法。

如何使用php中uniqid函數產生唯一的id

如何使用php中uniqid函數產生唯一的id中的uniqid雖然是產生唯一的值,但因為是基於當前時間以微秒同時在多個伺服器,所以當執行uniqid時可能會產生相同的值。

此問題可以透過套用前綴(prefix)來指定一個參數來避免。它是使用rand函數為前綴指定一個隨機值。

此外,它可用於上傳圖像和文件,例如在儲存上傳檔案時產生檔案名稱。

注意,uniqid容易受到密碼系統的攻擊,因此不要將其用作密碼!

uniqid的使用方法

第一個參數是前綴。

第二個參數指定是否增加要產生的字元數的true/false。預設情況下,第二個參數為false,產生的字元數為13個字元。

我們來看uniqid具體的寫法

#1、確認由於第一引數的有無而不同。

echo uniqid();          //  生成13个字符的字符串
echo uniqid("""");        // 指定参数为空,返回的字符串长度也为13
echo 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中文網其他欄位教學! ! !

以上是如何使用php中uniqid函數產生唯一的id的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn