PHP code example of uma / uuid
1. Go to this page and download the library: Download uma/uuid library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
uma / uuid example snippets
$v1 = new \UMA\Uuid\Version1Generator('01:23:45:67:89:ab');
(string) $v1->generate();
// c1f45316-dd26-11e7-b25b-0123456789ab
(string) $v1->generate();
// c1f45af4-dd26-11e7-b25b-0123456789ab
(string) $v1->generate();
// c1f45bf8-dd26-11e7-b25b-0123456789ab
$v4 = new \UMA\Uuid\Version4Generator();
(string) $v4->generate();
// 89f18abf-4c99-488c-a7e5-4f3a58e39d44
(string) $v4->generate();
// ff02c008-3318-4464-8f7c-0fc9263830b4
(string) $v4->generate();
// d4d33558-4a48-469e-8456-a46c4c895aac
$ns = \UMA\Uuid\Uuid::fromString(\UMA\Uuid\Version5Generator::NS_DNS);
$v5 = new \UMA\Uuid\Version5Generator($ns);
(string) $v5->generate('foo');
// b84ed8ed-a7b1-502f-83f6-90132e68adef
(string) $v5->generate('bar');
// e8d5cf6d-de0f-5e77-9aa3-91093cdfbf62
$comb = new \UMA\Uuid\CombGenerator();
(string) $comb->generate();
// 55fef06f-9382-4732-96b4-c13f92f7f254
(string) $comb->generate();
// 55fef06f-9392-4f41-a4c7-e036c1befcd7
(string) $comb->generate();
// 55fef06f-9396-4904-a606-c9b62c8e7aea
var_dump(microtime(true));
// 1513212567.378735
$g6 = new \UMA\Uuid\CombGenerator(6);
$g6->getOverflowDate();
// object(DateTimeImmutable)#4 (3) {
// ["date"]=>
// string(26) "2112-09-17 23:53:47.000000"
// ["timezone_type"]=>
// int(1)
// ["timezone"]=>
// string(6) "+00:00"
// }
$g0 = new \UMA\Uuid\CombGenerator(0);
$g0->getOverflowDate();
// object(DateTimeImmutable)#6 (3) {
// ["date"]=>
// string(29) "8921556-12-07 10:44:15.000000"
// ["timezone_type"]=>
// int(1)
// ["timezone"]=>
// string(6) "+00:00"
// }
$vanilla = new \UMA\Uuid\SequentialGenerator();
(string) $vanilla->generate();
// 00000000-0000-0000-0000-000000000000
(string) $vanilla->generate();
// 00000000-0000-0000-0000-000000000001
(string) $vanilla->generate();
// 00000000-0000-0000-0000-000000000002
$custom = new \UMA\Uuid\SequentialGenerator(dechex('abcd'), 255);
(string) $custom->generate();
// 00000000-0000-abcd-0000-0000000000ff
(string) $custom->generate();
// 00000000-0000-abcd-0000-000000000100
(string) $custom->generate();
// 00000000-0000-abcd-0000-000000000101
// Creates a new Uuid object from a hardcoded string
$uuid = \UMA\Uuid::fromString('96aaab69-7b76-4461-b008-cbb9cfcb6fdf');
// Passing an invalid value will result in an \InvalidArgumentException thrown
$badUuid = \UMA\Uuid::fromString('abcd');
// If you don't know beforehand if the value is a valid UUID but want
// to avoid the exception you can rely on the `Uuid::isUuid(string): bool` helper.
if (false === \UMA\Uuid::isUuid($unsafeUuid)) {
return;
}
$safeUuid = \UMA\Uuid::fromString($unsafeUuid);
$uuid = \UMA\Uuid::fromBytes(random_bytes(16));
$uuid = (new \UMA\Uuid\CombGenerator)->generate();
$uuid->asBytes();
// ??????M???D????d
$uuid->asString();
// 5608bfbf-4602-4abb-9aa1-7584ab428631
(string) $uuid === $uuid->asString();
// true
use UMA\Uuid\Uuid;
use UMA\Uuid\UuidGenerator;
class DeterministicGenerator implements UuidGenerator
{
/**
* @var Uuid
*/
private $uuid;
public function __construct(Uuid $uuid)
{
$this->uuid = $uuid;
}
public function generate(string $name = null): Uuid
{
return clone $this->uuid;
}
}