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

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(); 
?> 

輸出:
4bfd0e375396b
4bfd0e3753981
4bfd0e3753983
由生成的結果來看,唯一ID之間具有可排序性的

使用uniqid()函數生成唯一ID既能用於生成臨時性ID也能用於生成永久性唯一ID(存儲數據庫),具體請參與PHP手冊,請關注下一期PHP內置函數研究系列。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章