Generate a reordered time-based UUID v6 with improved sortability for databases.
Code
Utilities$timeGreg = (int)(microtime(true) * 10000000) + 0x01b21dd213814000;
$timeHigh = ($timeGreg >> 28) & 0xffffffff;
$timeMid = ($timeGreg >> 12) & 0xffff;
$timeLow = ($timeGreg & 0xfff) | 0x6000;
$clockSeq = mt_rand(0, 0x3fff) | 0x8000;
$node = mt_rand(0, 0xffffff) << 24 | mt_rand(0, 0xffffff);
return sprintf('%08x-%04x-%04x-%04x-%012x', $timeHigh, $timeMid, $timeLow, $clockSeq, $node);Server
More PHP Snippets
Generate UUID v1
Generate a time-based UUID v1 using timestamp and random node ID.
Generate UUID v3
Generate a name-based UUID v3 using MD5 hashing of namespace and name.
Generate UUID v4
Generate a random UUID v4 (Universally Unique Identifier).
Generate UUID v5
Generate a name-based UUID v5 using SHA-1 hashing of namespace and name.
Generate UUID v7
Generate a Unix timestamp-based UUID v7 with millisecond precision, ideal for database primary keys.
Array Difference
Find elements in the first array that are not present in the second array.