简介
全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符。GUID主要用于在拥有多个节点、多台计算机的网络或系统中。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。GUID 的总数达到了2128(3.4×1038)个,所以随机生成两个相同GUID的可能性非常小,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。
PHP实现
public function create_guid(){
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = substr($charid, 6, 2).substr($charid, 4, 2).
substr($charid, 2, 2).substr($charid, 0, 2).$hyphen
.substr($charid, 10, 2).substr($charid, 8, 2).$hyphen
.substr($charid,14, 2).substr($charid,12, 2).$hyphen
.substr($charid,16, 4).$hyphen .substr($charid,20,12);
return $uuid;
}