Laravel 包,用于根据 RFC 4122 标准生成 UUID。支持 UUID 版本 1、3、4 和 5。采用 MIT 许可。
1.0.1
2018-08-02 21:24 UTC
Requires
- php: >=5.3.0
Requires (Dev)
- fzaninotto/faker: 1.5.*
- phpunit/phpunit: 4.7.*
Suggests
- paragonie/random_compat: A random_bytes Php 5.x polyfill.
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()
函数。
要求
安装
- 在终端中,从您的项目根目录运行以下命令:
composer require rubiconinternational/uuid
- 在
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
等。应该是一个简单的修复。
鸣谢
许可
Laravel UUID 采用 MIT 许可证,适用于个人和商业产品。享受吧!