採用PHP函式uniqid生成乙個唯一的ID

2021-06-16 07:05:29 字數 974 閱讀 4620

php內建函式研究系列第七期,採用php函式uniqid生成乙個唯一的id,主要討論uniqid()函式的作用和用法。

生成唯一id的應用場景非常普遍,如臨時快取檔名稱,臨時變數,臨時安全碼等,uniqid()函式基於以微秒計的當前時間,生成乙個唯一的 id。由於生成唯一id與微秒時間關聯,因此id的唯一性非常可靠。生成的唯一id預設返回的字串有 13 個字串長,如果不定義唯一id的字首,最多可返回23個字串長,如果再結合md5()函式,生成的唯一id可靠性將更高,這種生成的id比隨機性的id 最大優點在於可實現排序,特別是一些需要儲存在資料庫中的值。

一,函式原型

string

uniqid ( [string prefix [, bool more_entropy]] )

可定義唯一id的字首與長度

二,版本相容

php 3, php 4, php 5

三,函式基礎用法與例項

1,生成乙個唯一id

<?php 

echo uniqid();

?>

輸出:4bfd0d472e3c4

2,結合md5()函式生成乙個唯一id

<?php 

echo md5(uniqid());

?>

輸出:dfbc5c8c6438de075da28b3c8a413fd0

3,生成多個唯一id,由於是以微秒計

<?php 

echo uniqid();

echo uniqid();

echo uniqid();

?>

採用PHP函式uniqid生成乙個唯一的ID

生成唯一id的應用場景非常普遍,如臨時快取檔名稱,臨時變數,臨時安全碼等,uniqid 函式基於以微秒計的當前時間,生成乙個唯一的 id。由於生成唯一id與微秒時間關聯,因此id的唯一性非常可靠。生成的唯一id預設返回的字串有 13 個字串長,如果不定義唯一id的字首,最多可返回23個字串長,如果再...

採用PHP函式uniqid生成乙個唯一的ID

生成唯一id的應用場景非常普遍,如臨時快取檔名稱,臨時變數,臨時安全碼等,uniqid 函式基於以微秒計的當前時間,生成乙個唯一的 id。由於生成唯一id與微秒時間關聯,因此id的唯一性非常可靠。生成的唯一id預設返回的字串有 13 個字串長,如果不定義唯一id的字首,最多可返回23個字串長,如果再...

使用uniqid生成唯一id

uniqid prefix more entropy false echo uniqid 55a3c0380d5c4 基於系統時間 其實就是一堆時間的十六進製制。前八位是秒的十六進製制,後5位是微妙的十六進製制。開啟php原始碼包,在ext standard uniqid.c中會發現有這麼一段 if...