icecave / druid
1.0.1
2014-11-08 08:34 UTC
Requires
- php: >=5.3
- icecave/isolator: ~2|~3
Requires (Dev)
- icecave/archer: ~1
This package is not auto-updated.
Last update: 2022-02-01 12:27:43 UTC
README
该项目已被作者弃用。请使用ramsey/uuid。
Druid是一个符合[RFC-4122]的PHP库,用于生成和解析全局唯一标识符(UUID)。
composer require icecave/druid
示例
Druid为每个支持的UUID版本提供了一个生成器类。创建UUID的步骤是首先实例化所需UUID版本的生成器,然后调用create()
方法。
所有生成器类都实现了UuidGeneratorInterface
接口,并产生实现了UuidInterface
的UUID。
生成UUID
版本1 - 基于网络地址和时间的标识符
// Not yet implemented.
版本2 - 基于网络地址和时间,并带有POSIX用户信息的标识符
// Not yet implemented.
版本3 - 基于命名的MD5哈希标识符
// Not yet implemented.
版本4 - 随机生成的标识符
$generator = new Icecave\Druid\UuidVersion4Generator; $uuid = $generator->generate(); assert($uuid instanceof Icecave\Druid\UuidInterface);
版本5 - 基于命名的SHA-1标识符
// Not yet implemented.
解析UUID
可以使用Uuid::fromString()
和Uuid::fromBinary()
方法分别从十六进制字符串和二进制缓冲区构建UUID。
$uuidFromString = Icecave\Druid\Uuid::fromString( '550e8400-e29b-41d4-a716-446655440000' ); $uuidFromBinary = Icecave\Druid\Uuid::fromBinary( "\x55\x0e\x84\x00\xe2\x9b\x41\xd4\xa7\x16\x44\x66\x55\x44\x00\x00" );