Как я могу сгенерировать уникальный идентификатор в laravel? - PullRequest
0 голосов
/ 29 сентября 2019

Я работаю над своим дипломным проектом в Laravel и хочу сгенерировать небольшой уникальный идентификатор "9 символов max" ... Мне не нужен UUID, потому что это сгенерирует 36 символов, что слишком долго.

Ответы [ 3 ]

0 голосов
/ 29 сентября 2019

Вы можете создать случайную строку с помощью этой библиотеки:

use Illuminate \ Support \ Str;

$ id = Str :: random (9);

0 голосов
/ 29 сентября 2019

Вы можете использовать это,

$unique_id= echo floor(time()-999999999);

, это генерирует 9-значное уникальное значение, основанное на времени.

0 голосов
/ 29 сентября 2019

Вы можете использовать функцию PHP следующим образом:

function unique_code($limit)
{
  return substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, $limit);
}
echo unique_code(9);

Вывод выглядит следующим образом:

s5s108dfc

Вот технические характеристики:

  • base_convert - Convert aчисло между произвольными основаниями.
  • sha1 - Вычисляет хэш sha1 строки.uniqid - генерирует уникальный идентификатор.
  • mt_rand - генерирует случайное значение с помощью генератора случайных чисел Mersenne Twister.

Или в Laravel вы можете использовать библиотеку laravel Str: просто используйте это:

use Illuminate\Support\Str;
$uniqid = Str::random(9);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...