如何在laravel中生成唯一ID?

时间:2019-09-29 06:09:08

标签: php laravel id

我正在与Laravel的毕业设计一起工作,并希望生成小的唯一ID“最大9个字符” ...我不需要UUID,因为这会生成太长的36个字符。

3 个答案:

答案 0 :(得分:0)

您可以像这样使用PHP函数:

function unique_code($limit)
{
  return substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, $limit);
}
echo unique_code(9);

输出如下:

s5s108dfc

这里是规格:

  • base_convert –在任意基数之间转换数字。
  • sha1 –计算字符串的sha1哈希。 uniqid –生成一个 唯一ID。
  • mt_rand –通过Mersenne Twister Random生成一个随机值 数字生成器。

或者在Laravel中,您可以使用laravel Str库: 只需使用这个:

use Illuminate\Support\Str;
$uniqid = Str::random(9);

答案 1 :(得分:0)

您可以使用此库生成随机字符串:

使用Illuminate \ Support \ Str;

$ id = Str :: random(9);

答案 2 :(得分:0)

您可以使用此,

reducer

这会根据时间生成一个9位数的唯一值。

相关问题