云迈博客

您现在的位置是:首页 > 后端开发 > PHP > 正文

PHP

生成唯一标识uuid

zero2020-10-19PHP357
方法一functiongreate_uuid(){if(version_compare(PHP_VERSION,'7.1','˃=')){returnmd5

方法一

function greate_uuid()
{
    if (version_compare(PHP_VERSION, '7.1', '>=')) {
        return md5(session_create_id());
    }
    return md5(uniqid(md5(microtime(true)), true));
}

方法二
/**

  • 生成UUID 单机使用
  • @access public
  • @return string
    */
    function uuid()
    {
    $charid = md5(uniqid(mt_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;
    }

测试方法
//生成指定数量的uuid
$uuids = [];
for ($i = 0; $i < 1000000; $i++) {
$uuids[] = greate_uuid();
}
//统计数据中值出现的次数
$values = array_count_values($uuids);
//遍历出大于1次的uuid
$duplicates = [];
foreach ($values as $k => $v) {
if ($v > 1) {
$duplicates[$k] = $v;
}
}
echo ‘<pre>';
print_r($duplicates);
echo '</pre>‘;

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~