UUID是指在一臺機器上生成的數(shù)字,它保證對在同一時空中的所有機器都是唯一的。
通常平臺 會提供生成UUID的API。UUID按照開放軟件基金會(OSF)制定的標準計算,用到了以太網卡地址、納秒級時間、芯片ID碼和許多可能的數(shù)字。
由以 下幾部分的組合:當前日期和時間(UUID的第一個部分與時間有關,如果你在生成一個UUID之后,過幾秒又生成一個UUID,則第一個部分不同,其余相 同),時鐘序列,全局唯一的IEEE機器識別號(如果有網卡,從網卡獲得,沒有網卡以其他方式獲得),UUID的唯一缺陷在于生成的結果串會比較長。
關于 UUID這個標準使用最普遍的是微軟的GUID(Globals Unique Identifiers)。
在ColdFusion中可以用CreateUUID()函數(shù)很簡單的生成UUID,其格式為:xxxxxxxx-xxxx-xxxx- xxxxxxxxxxxxxxxx(8-4-4-16),其中每個 x 是 0-9 或 a-f 范圍內的一個十六進制的數(shù)字。
而標準的UUID格式為:xxxxxxxx-xxxx-xxxx-xxxxxx-xxxxxxxxxx (8-4-4-4-12)
?php
function guid(){
if (function_exists('com_create_guid')){
return com_create_guid();
}else{
mt_srand((double)microtime()*10000);//optional for php 4.2.0 and up.
$charid = strtoupper(md5(uniqid(rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
}
echo guid();
?>
以上所述是小編給大家介紹的php中生成標準uuid(guid)的方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- PHP框架Laravel中使用UUID實現(xiàn)數(shù)據分表操作示例
- PHP中生成UUID自定義函數(shù)分享
- Mysql中存儲UUID去除橫線的方法
- Shell腳本實現(xiàn)隨機數(shù)多種方法介紹(date、random、uuid)
- master and slave have equal MySQL server UUIDs 解決方法
- spring boot整合mybatis利用Mysql實現(xiàn)主鍵UUID的方法
- 用JS生成UUID的方法實例
- Javascript生成全局唯一標識符(GUID,UUID)的方法
- java實現(xiàn)隨機生成UUID