UUID Generator in PHP — Code Examples
UUIDs (Universally Unique Identifiers) are 128-bit identifiers used as database primary keys, session tokens, and idempotency keys. UUID v4 (random) is the safe default; UUID v7 (time-ordered) is preferred for database primary keys.
PHP has no built-in UUID function before 8.x. Use ramsey/uuid for full UUID support or generate v4 manually with random_bytes().
<?php
// UUID v4 — manual implementation using random_bytes()
function uuid_v4(): string {
$data = random_bytes(16);
$data[6] = chr(ord($data[6]) & 0x0f | 0x40); // version 4
$data[8] = chr(ord($data[8]) & 0x3f | 0x80); // variant bits
return vsprintf("%s%s-%s-%s-%s-%s%s%s", str_split(bin2hex($data), 4));
}
echo uuid_v4() . "
"; // e.g. 110e8400-e29b-41d4-a716-446655440000<?php
// composer require ramsey/uuid
use RamseyUuidUuid;
// UUID v4 — random
$id = Uuid::uuid4();
echo $id->toString() . "
";
// UUID v7 — time-ordered
$id7 = Uuid::uuid7();
echo $id7->toString() . "
";
// UUID v5 — deterministic
$id5 = Uuid::uuid5(Uuid::NAMESPACE_URL, "https://example.com");
echo $id5->toString() . "
";- Use random_bytes() not rand() or mt_rand() — those are not cryptographically secure.
- ramsey/uuid is the de facto standard PHP UUID library and supports v1 through v8.
- PHP 8.1 does not add built-in UUID support — a package is still required for anything beyond manual v4.
Need to uuid generator without writing code? The UUID Generator runs entirely in your browser — paste your input and get the result instantly. No signup, no install, no data sent to a server.
Open UUID Generator →UUID Generator in JavaScript / Node.js
Node.js 14.17+ and all modern browsers include crypto.randomUUID(). For older environments use the uuid package.
UUID Generator in Python
Python's standard library includes the uuid module with support for v1, v3, v4, and v5.
UUID Generator in Go
Go's standard library does not include UUID generation. The google/uuid package is the standard choice.
UUID Generator in Java
Java's standard library includes java.util.UUID with randomUUID() for v4 and nameUUIDFromBytes() for v3.
UUID Generator in Ruby
Ruby's built-in SecureRandom module generates UUID v4. For v5 or v7, use the uuidtools or uuid gems.
UUID Generator in Rust
Rust uses the uuid crate. Enable the v4 and v7 features in Cargo.toml for random and time-ordered UUIDs.
UUID Generator in C# / .NET
C# uses Guid for UUIDs. Guid.NewGuid() generates a v4-equivalent random GUID. .NET 9 adds Guid.CreateVersion7() for time-ordered v7.