首頁  >  文章  >  後端開發  >  php中使用uuid

php中使用uuid

不言
不言原創
2018-04-16 11:35:269824瀏覽

這篇文章介紹的內容是關於php中使用uuid  ,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下


##一. 定義       

   

UUID意義是 通用唯一識別碼(Universally Unique Identifier)


   UUID 的目的,是讓分散式系統中的所有元素,都能有唯一的辨識資訊,而不需要透過中央控制端來做辨識資訊的指定。如此一來,每個人都可以建立不與其它人衝突的 UUID。在這樣的情況下,就不需要考慮資料庫建立時的名稱重複問題。目前最廣泛應用的 UUID,分別是微軟的 Microsoft's Globally Unique Identifiers (GUIDs),而其他重要的應用,則有 Linux ext2/ext3 檔案系統、LUKS 加密分割區、GNOME、KDE、Mac OS X 等等。 
    UUID是指在一台機器上產生的數字,它保證在同一時空中的所有機器都是唯一的。通常平台會提供產生的API。依照開放軟體基金會(OSF)所製定的標準計算,用到了乙太網路卡位址、奈秒時間、晶片ID碼和許多可能的數字 
UUID由以下幾部分的組合: 
(1)當前日期和時間,UUID的第一個部分與時間有關,如果你在產生一個UUID之後,過幾秒又產生一個UUID,則第一個部分不同,其餘相同。 
(2)時鐘序列。 
(3)全域唯一的IEEE機器識別號,如果有網路卡,從網路卡MAC位址取得,沒有網路卡以其他方式取得。 
UUID的唯一缺陷在於產生的結果字串會比較長。關於UUID這個標準使用最普遍的是微軟的GUID(Globals Unique Identifiers)。在ColdFusion中可以用CreateUUID()函數很簡單地產生UUID,其格式為:xxxxxxxx-xxxx- xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),其中每個x 是0-9 或a-f 範圍內的一個十六進制的數字。 而 標準的UUID格式為:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx (8-4-4-4-12)

,可以從cflib 下載CreateGUID() UDF進行轉換。

二. 產生方法      

   1.使用函數uuid_create()函數或 com_create_guid()

##函數前需安裝uuid擴充功能, 安裝方法如下

              http://www.bubuko.com/infodetail-2390379.html(轉載)

# 2.自訂函數

            

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 )
  );
 }
}

相關建議:

session如何使用使用講解



#################1 ##PHP中使用hidef代替define最佳化效率########################

以上是php中使用uuid的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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