PHP:如何生成GUID为char 22?

时间:2016-05-19 10:09:33

标签: php guid

我生成这样的GUID:

public static function getGUID(){
        if (function_exists('com_create_guid')){
            return 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);// "-"
            $uuid = substr($charid, 0, 8).$hyphen
            .substr($charid, 8, 4).$hyphen
            .substr($charid,12, 4).$hyphen
            .substr($charid,16, 4).$hyphen
            .substr($charid,20,12);
            return $uuid;
        }
    }

但是对于我正在使用的API,我需要获得一个GUID作为char 22.我该怎么做?

它应该是这样的:

  

051MWsLH7jMaiuTyaRbC80

1 个答案:

答案 0 :(得分:3)

22 char UUID称为XUID。请参阅有关如何从UUID here制作XUID的说明,还有一个指向PHP库的链接以生成XUID