首页 > 开发 > PHP > 正文

PHP中生成UUID自定义函数分享

2024-05-04 23:36:01
字体:
来源:转载
供稿:网友

这篇文章主要介绍了PHP中生成UUID自定义函数分享,本文提供的代码可以生成一个 UUID version 4,,需要的朋友可以参考下

UUID 全称是 Universally unique identifier,它是一种识别符,使用任意的计算机都可以生成,不需要一个中央数据库进行管理,即可以保证几乎没有重复的几率。而 UUID 的值域之大,据说给世界上每一粒沙子分配一个 UUID,也不会有重复的。

最近在改 WordPress 的代码,需要用到 UUID。但是,PHP 中居然没有生成 UUID 的函数,只好自己写一个。

 

 
  1. if (!function_exists('com_create_guid')) { 
  2. function com_create_guid() { 
  3. return sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x'
  4. mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), 
  5. mt_rand( 0, 0xffff ), 
  6. mt_rand( 0, 0x0fff ) | 0x4000, 
  7. mt_rand( 0, 0x3fff ) | 0x8000, 
  8. mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ), mt_rand( 0, 0xffff ) 
  9. ); 

上述代码可以生成一个 UUID version 4。UUID 目前有 5 个版本,其中第四版是完全随机的,生成起来比较容易。而其中的 com_create_guid,是 Windows 中 PHP 的一个函数,它直接调用 COM 的 CreateGuid 函数来生成 UUID,但是在 Linux 没有对应的函数库,只好自己写了。为了方便在不同的平台上使用,就创建了一个同名的函数。其它的代码就是生成随机数了。

至于用法,就直接调用 com_create_guid() 即可。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表