function guid( $opt = true ){       //  Set to true/false as your default way to do this.
if( function_exists('com_create_guid') ){
if( $opt ){ return com_create_guid(); }
else { return trim( com_create_guid(), '{}' ); }
}
else {
mt_srand( (double)microtime() * 10000 ); // optional for php 4.2.0 and up.
$charid = strtoupper( md5(uniqid(rand(), true)) );
$hyphen = chr( 45 ); // "-"
$left_curly = $opt ? chr(123) : ""; // "{"
$right_curly = $opt ? chr(125) : ""; // "}"
$uuid = $left_curly
. substr( $charid, 0, 8 ) . $hyphen
. substr( $charid, 8, 4 ) . $hyphen
. substr( $charid, 12, 4 ) . $hyphen
. substr( $charid, 16, 4 ) . $hyphen
. substr( $charid, 20, 12 )
. $right_curly;
return $uuid;
}
}

php 生成 guid的更多相关文章

  1. 生成GUID唯一值的方法汇总(dotnet/javascript/sqlserver)

    一.在 .NET 中生成1.直接用.NET Framework 提供的 Guid() 函数,此种方法使用非常广泛.GUID(全局统一标识符)是指在一台机器上生成的数字,它保证对在同一时空中的任何两台计 ...

  2. Javascript生成GUID

    GUID(全球唯一标识)是微软使用的一个术语,由一个特定的算法,给某一个实体,如Word文档,创建一个唯一的标识,GUID值就是这个唯一的标识码.除了.Net有专门的方法生成外,JS也可以生成GUID ...

  3. JS 生成GUID

    js 代码: function GUID() { this.date = new Date(); /* 判断是否初始化过,如果初始化过以下代码,则以下代码将不再执行,实际中只执行一次 */ if (t ...

  4. Delphi生成GUID

    Delphi生成GUID Uses ComObj; Var aGUID: string; aGUID := GetClassId; // 取得GUID

  5. 原生JavaScript生成GUID的实现

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

  6. 生成GUID字符串

    //生成GUID字符串 string loginToken = System.Guid.NewGuid().ToString();

  7. PHP+Jquery+Ajax 实现动态生成GUID、加载GUID

    GUID: 全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID主要用于在拥有多个节点.多台计算机的网络或系统中 ...

  8. Excel生成guid、uuid

    1.Excel生成guid,uuid  格式:600d65bc-948a-1260-2217-fd8dfeebb1cd =LOWER(CONCATENATE(DEC2HEX(RANDBETWEEN(, ...

  9. C++生成GUID

    #include <objbase.h> #include <stdio.h> //--生成GUID const char* newGUID() { ] = {}; GUID ...

  10. Oracle 生成Guid;Oracle 生成多个Guid;Oracle 生成带''-"的Guid

    Oracle 生成Guid select sys_guid() from dual Oracle 生成多个Guid Oracle 生成带''-"的Guid , ) , ) || '-' || ...

随机推荐

  1. caffe下python环境的编译

    安装python所需的依赖包 (1)sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-n ...

  2. linux中openssl生成证书和自签证书

    1.首先要生成服务器端的私钥(key文件): 命令: openssl genrsa -des3 -out server.key 1024 运行时会提示输入密码,此密码用于加密key文件(参数des3便 ...

  3. Excel里的多列求和(相邻或相隔皆适用)

    最近,需要这个知识点,看到网上各种繁多复杂的资料,自己梳理个思路. 不多说,直接上干货! 简述:将L列.M列和N列,相加放到O列.(当然这里是相邻的列).同时,也可以求相隔几列的某些列相加.

  4. .NET MVC Dropzone 上传图片

    在nuget控制台输入:Install-Package dropzone @{ Layout = null; } <!DOCTYPE html> <html> <head ...

  5. FluentAPI关系映射配置

    都有哪几种关系? 1vs多,多vs多 1. 概念or关系映射相关方法: 1) 基本套路:this.Has***(o=>o.AAA).With***() 当前这个表和AAA属性的表关系是Has定义 ...

  6. Core Java(三)

    三.运算符&流程控制 运算符---http://blog.csdn.net/typa01_kk/article/details/45000535 在一个程序执行的过程中,各条语句的执行顺序对程 ...

  7. 自己写的PHP的mql类

    用类封装的一个数据库的操作,不仅安全,而且会省去很多代码. header('Content-type:text/html;charset="utf-8"'); class mysq ...

  8. Spark 代码走读之 Cache

    Spark是基于内存的计算模型,但是当compute chain非常长或者某个计算代价非常大时,能将某些计算的结果进行缓存就显得很方便了.Spark提供了两种缓存的方法 Cache 和 checkPo ...

  9. 洛谷4623 [COCI2012-2013#6] BUREK

    题目描述 给定N个三角形,和M条直线,直线要么平行于X轴,要么平行于Y轴,问这M条直线 分别经过多少个三角形内部 (注意是内部即分开的两个多边形的面积均大于零). 输入输出格式 输入格式: 第一行一个 ...

  10. HDU 2078 选课时间( 水题 )

    链接:传送门 思路:水题略 /************************************************************************* > File N ...