- 相關(guān)推薦
PHP中生成UUID自定義函數(shù)分享
文章主要介紹了PHP中生成UUID自定義函數(shù)分享,本文提供的代碼可以生成一個(gè) UUID version 4,,需要的朋友可以參考下。
UUID 全稱是 Universally unique identifier,它是一種識(shí)別符,使用任意的計(jì)算機(jī)都可以生成,不需要一個(gè)中央數(shù)據(jù)庫(kù)進(jìn)行管理,即可以保證幾乎沒有重復(fù)的幾率。而 UUID 的值域之大,據(jù)說給世界上每一粒沙子分配一個(gè) UUID,也不會(huì)有重復(fù)的。
最近在改 WordPress 的代碼,需要用到 UUID。但是,PHP 中居然沒有生成 UUID 的函數(shù),只好自己寫一個(gè)。
?
1
2
3
4
5
6
7
8
9
10
11
if (!function_exists('com_create_guid')) {
function com_create_guid() {
return sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ),
mt_rand( 0, 0xffff ),
mt_rand( 0, 0x0fff ) | 0x4000,
mt_rand( 0, 0x3fff ) | 0x8000,
mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff )
);
}
}
上述代碼可以生成一個(gè) UUID version 4。UUID 目前有 5 個(gè)版本,其中第四版是完全隨機(jī)的,生成起來比較容易。而其中的 com_create_guid,是 Windows 中 PHP 的一個(gè)函數(shù),它直接調(diào)用 COM 的 CreateGuid 函數(shù)來生成 UUID,但是在 Linux 沒有對(duì)應(yīng)的函數(shù)庫(kù),只好自己寫了。為了方便在不同的平臺(tái)上使用,就創(chuàng)建了一個(gè)同名的函數(shù)。其它的代碼就是生成隨機(jī)數(shù)了。
至于用法,就直接調(diào)用 com_create_guid() 即可。
【PHP中生成UUID自定義函數(shù)分享】相關(guān)文章:
PHP分頁(yè)自定義函數(shù)04-02
php摘要生成函數(shù)詳解02-17
php自定義函數(shù)實(shí)現(xiàn)漢字分割替換06-01
分享php過濾XSS攻擊的函數(shù)05-21
php中rename函數(shù)用法08-08