Popularna biblioteka PHP UUID autorstwa Ben Ramsey wydała nową wersję z obsługą UUID v8, niestandardowych UUID:
I just published version 4.6.0 of ramsey/uuid from #LonghornPHP!
— Ben Ramsey 🇺🇦 (@ramsey) November 6, 2022
It includes support for version 8, custom UUIDs, and it ensures monotonicity in version 7, Unix Epoch time UUIDs.https://t.co/MkIvBsRhol
Read more about version 8 UUIDs here: https://t.co/8IbHyfP9gW
Cheers!
- An implementation would like to embed extra information within the UUID other than what is defined in this document.
- An implementation has other application/language restrictions which inhibit the use of one of the current UUIDs.
use Ramsey\Uuid\Uuid;
/*
The bytes should be a 16-byte octet string, an open blob of data that you may fill with 128 bits of information. However, bits 48 through 51 will be replaced with the UUID version field, and bits 64 and 65 will be replaced with the UUID variant. You must not rely on these bits for your application needs.
*/
$uuid = Uuid::uuid8("\x00\x11\x22\x33\x44\x55\x66\x77\x88\x99\xaa\xbb\xcc\xdd\xee\xff");
printf(
"UUID: %s\nVersion: %d\n",
$uuid->toString(),
$uuid->getFields()->getVersion()
);
/*
UUID: 00112233-4455-8677-8899-aabbccddeeff
Version: 8
*/