如何生成新的GUID?

我正在开发一个Web服务,它需要一个新的GUID()作为参数传递给服务中的一个方法。

我不熟悉C#GUID() object ,但需要类似于PHP东西(因此,根据我的理解,创建一个新对象返回一个empty/blank GUID )。

有任何想法吗?


您可以尝试以下方法:

function GUID()
{
    if (function_exists('com_create_guid') === true)
    {
        return trim(com_create_guid(), '{}');
    }

    return sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(16384, 20479), mt_rand(32768, 49151), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535));
}

来源 - com_create_guid


作为上述选项的替代方案:

$guid = bin2hex(openssl_random_pseudo_bytes(16));

它给出了一个像412ab7489d8b332b17a2ae127058f4eb这样的字符串


<?php
function guid(){
if (function_exists('com_create_guid') === true)
    return trim(com_create_guid(), '{}');

$data = openssl_random_pseudo_bytes(16);
$data[6] = chr(ord($data[6]) & 0x0f | 0x40);
$data[8] = chr(ord($data[8]) & 0x3f | 0x80);
return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
}
?>

GUID生成器

链接地址: http://www.djcxy.com/p/91435.html

上一篇: How to generate a new GUID?

下一篇: How can I generate a GUID for a string?