Laravel 包,用于根据 RFC 4122 标准生成 UUID。支持 UUID 版本 1、3、4 和 5。采用 MIT 许可。

1.0.1 2018-08-02 21:24 UTC

This package is auto-updated.

Last update: 2024-09-29 05:08:30 UTC


README

Laravel 包,用于根据 RFC 4122 标准生成 UUID。支持 UUID 版本 1、3、4 和 5。采用 MIT 许可。

关于

从 Laravel 4.* 和 5.* 版本开始,都依赖于 OpenSSL 或 Mcrypt 中的一个,因此伪随机字节生成器现在尝试使用其中一个。如果两个都不能使用(不是 Laravel 项目?),则使用 'less random' 的 mt_rand() 函数。

要求

安装

  1. 在终端中,从您的项目根目录运行以下命令:
    composer require rubiconinternational/uuid
  1. config/app.php 下的 aliases 中注册该包,如下所示:
    'aliases' => [
        'Uuid' => rubiconinternational\Uuid\Uuid::class,
    ];

基本用法

要快速生成一个 UUID,只需这样做:

    Uuid::generate()
  • 这将生成一个带有随机生成的 MAC 地址的版本 1。

高级用法

UUID 创建

UUID V1

生成一个基于时间的版本 1 UUID。您可以设置可选的节点为 MAC 地址。如果没有提供,将生成一个随机 MAC 地址。

Uuid::generate(1,'00:11:22:33:44:55');
UUID V3

使用 MD5 哈希生成基于名称的版本 3 UUID

Uuid::generate(3,'test', Uuid::NS_DNS);
UUID V4

生成一个真正随机的版本 4 UUID

Uuid::generate(4);
UUID V5

使用 SHA-1 哈希生成基于名称的版本 5 UUID

Uuid::generate(5,'test', Uuid::NS_DNS);

附加功能

导入 UUID
  • 导入 UUID
$uuid = Uuid::import('d3d29d70-1d25-11e3-8591-034165a3a613');
提取时间
  • 提取基于时间的 UUID(版本 1)的时间
$uuid = Uuid::generate(1);
dd($uuid->time);
提取版本
  • 提取 UUID 的版本
$uuid = Uuid::generate(4);
dd($uuid->version);

变更日志

2.*
  • Laravel Uuid 现在完全符合 PSR-2,就像 Laravel 5.1 一样。
  • 除了将 Laravel Uuid 中使用的常量转换为大写之外,没有太多变化。
  • 这意味着 Uuid::nsDNS 现在是 Uuid::NS_DNS 等。应该是一个简单的修复。

鸣谢

  • 完全的开发信用必须归功于 webpatser。此包被 fork 并修改,以符合MIT 许可证标准,以用于生产。

许可

Laravel UUID 采用 MIT 许可证,适用于个人和商业产品。享受吧!