程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP中生成UUID自定義函數分享

PHP中生成UUID自定義函數分享

編輯:關於PHP編程

     UUID 全稱是 Universally unique identifier,它是一種識別符,使用任意的計算機都可以生成,不需要一個中央數據庫進行管理,即可以保證幾乎沒有重復的幾率。而 UUID 的值域之大,據說給世界上每一粒沙子分配一個 UUID,也不會有重復的。

    最近在改 WordPress 的代碼,需要用到 UUID。但是,PHP 中居然沒有生成 UUID 的函數,只好自己寫一個。

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

    上述代碼可以生成一個 UUID version 4。UUID 目前有 5 個版本,其中第四版是完全隨機的,生成起來比較容易。而其中的 com_create_guid,是 Windows 中 PHP 的一個函數,它直接調用 COM 的 CreateGuid 函數來生成 UUID,但是在 Linux 沒有對應的函數庫,只好自己寫了。為了方便在不同的平台上使用,就創建了一個同名的函數。其它的代碼就是生成隨機數了。

    至於用法,就直接調用 com_create_guid() 即可。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved