uniqid

(PHP 4, PHP 5, PHP 7, PHP 8)

uniqid — Створити унікальний ID

Опис

uniqid(string $prefix = "", bool $more_entropy = false): string

Отримує унікальний ідентифікатор з префіксом, що базується на поточному часі в мікросекундах.

Застереження

Функція не створює криптографічно захищені значення та не повинна використовуватися для криптографічних цілей або цілей, що вимагають, щоб значення, що повертаються, були недоступні для розгадування.

Якщо потрібна криптографічно безпечна випадкова послідовність, можна використати клас Random\Randomizer з двигуном Random\Engine\Secure. Для простих сценаріїв є функції random_int() і random_bytes() із зручним API криптографічно безпечного генератора псевдовипадкових чисел (CSPRNG), що підтримується операційною системою.

Увага

Ця функція не гарантує отримання унікального значення. Більшість операційних систем синхронізує час з NTP, або його аналогами, тому системний час постійно змінюється. Отже, можлива ситуація, коли ця функція поверне неунікальний ідентифікатор для процесу/потоку. Щоб збільшити ймовірність отримання унікального значення, використовуйте параметр more_entropy

Список параметрів

prefix

Може бути корисно, наприклад, якщо ідентифікатори генеруються одночасно на декількох хостах і генерація ідентифікаторів виробляється в одну й ту саму мікросекунду.

З порожнім параметром prefix, що повертається рядок буде довжиною 13 символів. Якщо параметр more_entropyравен**true**, то рядок буде довжиною 23 символи.

more_entropy

Якщо дорівнює true, то функцияuniqid() додасть додаткову ентропію (використовуючи комбінований лінійний конгруентний генератор) в кінці значення, що повертається, що збільшує ймовірність унікальності результату.

Значення, що повертаються

Повертає унікальний ідентифікатор у вигляді рядка.

Увага

Ця функція намагається створити унікальний ідентифікатор, але це не дає 100% гарантії унікальності.

Приклади

Приклад #1 Приклад використання uniqid()****

Loading...

Примітки

Зауваження :

В Cygwin параметрmore_entropy повинен бути заданий як true до роботи цієї функції.

Дивіться також

  • random_bytes() - Отримує криптографічно безпечні випадкові байти