-
-
Notifications
You must be signed in to change notification settings - Fork 0
Quick start
github-actions[bot] edited this page Jul 15, 2026
·
1 revision
use CloudCastle\Uuid\Uuid;
$id = Uuid::uuid4(); // случайный
$key = Uuid::uuid7(); // сортируемый — для первичных ключей
(string) $id; // 'e2b0dd0e-1c2d-4f6a-…'
$key->toBytes(); // 16 байт → BINARY(16)
Uuid::fromString($_GET['id'] ?? ''); // валидация на границе (исключение при мусоре)use CloudCastle\Uuid\{Uuid, Ulid, NanoIdFactory, SnowflakeFactory, SonyflakeFactory};
Uuid::uuid7(); // UUID v7
Ulid::generate(); // ULID
(new NanoIdFactory())->generate(); // NanoID (21 символ)
(new SnowflakeFactory(1, 7))->generate(); // Snowflake узла 1/7
(new SonyflakeFactory(1234))->generate(); // Sonyflake машины 1234$u = Uuid::fromString('01ARYZ6S41TSV4RRFFQ69G5FAV'); // ULID-форма? — распознаётся
$u->toBase58(); // короткая ссылка
$u->toUlid(); // мост в ULID
$u->version(); // интроспекцияuse CloudCastle\Clock\MockClock; // composer require --dev cloudcastle/clock
use CloudCastle\Uuid\UuidFactory;
$factory = new UuidFactory(clock: MockClock::from('2026-01-01 00:00:00', 'UTC'));
$factory->uuid7()->timestampMs(); // всегда 1767225600000Дальше: страницы возможностей — каждая с примерами, схемами и сравнением с аналогами.
CloudCastle Uuid · · PHP 8.1+
GitHub · Packagist · Releases · Discussions · Issues
Email · Telegram · VK · Сетка · 💜 Поддержать проект
Исходники Wiki — каталог wiki/ в репозитории (синхронизация через GitHub Actions)