mirror of
https://github.com/ramsey/uuid.git
synced 2026-06-15 16:07:55 +03:00
Add v2() convenience function for version 2 UUIDs
This commit is contained in:
@@ -15,6 +15,9 @@ declare(strict_types=1);
|
||||
|
||||
namespace Ramsey\Uuid;
|
||||
|
||||
use Ramsey\Uuid\Type\Hexadecimal;
|
||||
use Ramsey\Uuid\Type\IntegerValue;
|
||||
|
||||
/**
|
||||
* Returns a version 1 (time-based) UUID from a host ID, sequence number,
|
||||
* and the current time
|
||||
@@ -30,6 +33,31 @@ function v1($node = null, ?int $clockSeq = null): string
|
||||
return Uuid::uuid1($node, $clockSeq)->toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a version 2 (DCE Security) UUID from a local domain, local
|
||||
* identifier, host ID, clock sequence, and the current time
|
||||
*
|
||||
* @param int $localDomain The local domain to use when generating bytes,
|
||||
* according to DCE Security
|
||||
* @param IntegerValue|null $localIdentifier The local identifier for the
|
||||
* given domain; this may be a UID or GID on POSIX systems, if the local
|
||||
* domain is person or group, or it may be a site-defined identifier
|
||||
* if the local domain is org
|
||||
* @param Hexadecimal|null $node A 48-bit number representing the hardware
|
||||
* address
|
||||
* @param int|null $clockSeq A 14-bit number used to help avoid duplicates
|
||||
* that could arise when the clock is set backwards in time or if the
|
||||
* node ID changes
|
||||
*/
|
||||
function v2(
|
||||
int $localDomain,
|
||||
?IntegerValue $localIdentifier = null,
|
||||
?Hexadecimal $node = null,
|
||||
?int $clockSeq = null
|
||||
): string {
|
||||
return Uuid::uuid2($localDomain, $localIdentifier, $node, $clockSeq)->toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a version 3 (name-based) UUID based on the MD5 hash of a
|
||||
* namespace ID and a name
|
||||
|
||||
Reference in New Issue
Block a user