文档章节

PHP生成GUID

笨小熊
 笨小熊
发布于 2016/11/19 13:00
字数 374
阅读 13
收藏 2

一、GUID简介
在 Windows 平台上,GUID 广泛应用于微软的产品中,用于标识如如注册表项、类及接口标识、数据库、系统目录等对象。
GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个32位十六进制数。例如:6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 GUID 值。


二、GUID的优点
1.GUID在空间上和时间上具有唯一性,保证同一时间不同地方产生的数字不同。 
2.世界上的任何两台计算机都不会生成重复的 GUID 值。
3.需要GUID的时候,可以完全由算法自动生成,不需要一个权威机构来管理。 
4.GUID的长度固定,并且相对而言较短小,非常适合于排序、标识和存储。

<?php
function guid(){ 

   if(function_exists('com_create_guid')){
       return com_create_guid();//window下
   }else{//非windows下
       mt_srand((double)microtime()*10000);//optional for php 4.2.0 andup.
       $charid = strtoupper(md5(uniqid(rand(), true)));
       $hyphen = chr(45);//字符 "-"
       $uuid = chr(123)//字符 "{"
               .substr($charid, 0, 8).$hyphen
               .substr($charid, 8, 4).$hyphen
               .substr($charid,12, 4).$hyphen
               .substr($charid,16, 4).$hyphen
               .substr($charid,20,12)
               .chr(125);//字符 "}"
       return $uuid;
    }
}
echo guid();
?>

© 著作权归作者所有

共有 人打赏支持
上一篇: MySQL分片
笨小熊
粉丝 13
博文 150
码字总数 64409
作品 0
深圳
高级程序员
私信 提问
PHP生成GUID的函数

GUID: 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) 。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一...

蜗牛奔跑
2016/01/14
27
0
高并发分布式系统中生成全局唯一(订单号)Id

高并发分布式系统中生成全局唯一(订单号)Id 1、GUID数据因毫无规律可言造成索引效率低下,影响了系统的性能,那么通过组合的方式,保留GUID的10个字节,用另6个字节表示GUID生成的时间(D...

DemonsI
09/21
0
0
C# GUID的使用

 GUID(全局统一标识符)是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成GUID的API。生成算法很有意思,用到了以太网卡地址、纳秒级时间、芯片...

冰点沐雪
2013/01/30
0
0
可排序的 COMB 类型 GUID

首先这里不做GUID与整形作为主键的优劣之争,GUID自有它优势,但GUID本身是乱序的,会对索引的维护带来性能上的损耗,数据量越大越明显。 COMB 类型 GUID 是由Jimmy Nilsson在他的“The Cos...

Yamazaki
2015/09/16
245
0
理解newid()和newsequentialid()

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> 1.:newsequentialid 函数比起 newid 函数最大的好处是:如果你在一个 UNIQUEIDENTIFIER 字段上建立索引......

技术小美
2017/11/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

小白创建一个spring boot项目

进入 https://start.spring.io/

lilugirl
30分钟前
0
0
Alibaba Java诊断利器Arthas实践--使用redefine排查应用奇怪的日志来源

背景 随着应用越来越复杂,依赖越来越多,日志系统越来越混乱,有时会出现一些奇怪的日志,比如: [] [] [] No credential found 那么怎样排查这些奇怪的日志从哪里打印出来的呢?因为搞不清...

hengyunabc
今天
1
0
home hosts

home hosts lwk@qwfys:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 qwfys192.168.56.101vm600.qwfys.com39.108.212.91alpha1.ppy.com39.108.117.122alpha2.p......

qwfys
今天
1
0
大数据教程(6.1)hadoop生态圈介绍及就业前景

1. HADOOP背景介绍 1.1、什么是HADOOP 1.HADOOP是apache旗下的一套开源软件平台 2.HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理 3.HADOOP的核心组...

em_aaron
今天
4
0
hadoop垃圾回收站

在生产生,hdfs回收站必须是开启的,一般设置为7天。 fs.trash.interval 为垃圾回收站保留时间,如果为0则禁用回收站功能。 fs.trash.checkpoint.interval 回收站检查点时间,一般设置为小于...

hnairdb
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部