Подскажите почему у меня хеш меняется

lutskboy
На сайте с 22.11.2013
Offline
173
249

Привет

есть у меня простая функция. генерирует хеш со случайных цифр букв

суть ее в том что берем строку

$charset = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUFWXIZ';
for ($i=0; $i < 9; $i++) { 
  $output .= $charset[mt_rand(0, 61)];
}

на выходе хеш. случайные числа или цифры. каждый раз другой


мне нужно чтоб он не менялся и был постоянным. зависел от числа. я добавил srand(10);

$charset = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUFWXIZ';
for ($i=0; $i < 9; $i++) { 
  srand($i);
  $output .= $charset[mt_rand(0, 61)];
}

и все хорошо. он постоянный и зависит от  srand

но если я ставлю скрипт на крон то он снова меняется постоянно. как будто игнорирует  srand. как ето решить?

W1
На сайте с 22.01.2021
Offline
289
#1
lutskboy :
я добавил srand(10)

Что-то непохоже :

lutskboy :
srand($i);
lutskboy :
как ето решить?

Попробуй mt_srand().

Но вообще странная задача: получать одинаковые последовательности с помощью генератора случайных чисел.

Мой форум - https://webinfo.guru –Там я всегда на связи
lutskboy
На сайте с 22.11.2013
Offline
173
#2

работает. спасибо

странно что и с  srand работает. но только я подключаю класс для работы с бд и все.  mt_srand вроде ок. потестирую

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий