<? phpukraine ІНСТРУМЕНТИ
Пошук по платформі

Генератор UUID v4 і v7

До ста ідентифікаторів за раз, з верхнім регістром і варіантом без дефісів.

У БРАУЗЕРІ ГЕНЕРАТОР
РОБОЧА ЗОНА
ЩО РОБИТЬ

Дає ідентифікатори, які можна одразу вставити в код

Потрібен пакет ідентифікаторів для сіду, фікстур або тестових даних: тут вони генеруються сотнею за раз, кожен копіюється окремо. Є обидві версії, які реально використовують: v4 повністю випадковий, v7 містить час створення на початку й тому природно сортується.

ЯК ЦЕ ПРАЦЮЄ В PHP

У PHP стандартної функції для UUID немає, тому беруть ramsey/uuid або symfony/uid. Laravel генерує UUID через Str::uuid() і Str::orderedUuid(), а трейт HasUuids дає моделі ключі автоматично. Для нових таблиць v7 майже завжди краще за v4: значення зростають у часі, тому індекс не фрагментується.

use Symfony\Component\Uid\Uuid;

$random = Uuid::v4();   // 550e8400-e29b-41d4-a716-446655440000
$sorted = Uuid::v7();   // час усередині, зростає монотонно

// В Eloquent
use Illuminate\Database\Eloquent\Concerns\HasUuids;

class Order extends Model
{
    use HasUuids;   // впорядковані UUID для первинного ключа
}
ПИТАННЯ

Що питають про цей інструмент

v7, якщо таблиця буде рости. Випадковий v4 вставляється у випадкове місце індексу, що фрагментує B-дерево й уповільнює запис на великих обʼємах. v7 має час на початку, тому нові рядки додаються в кінець: поведінка близька до автоінкремента, але без розкриття кількості записів.

ДАЛІ ПО ТЕМІ