Рандомизация строк и массивов с привязкой к определенному параметру

Бывает что нужно рандомизировать массив либо строку, но при этом сделать этот рандом неизменяемым. Например, есть у нас тайтлы страниц, и слова в них нужно подставить рандомные, но так, чтобы при последующих запросах тайтл не менялся. К примеру с привязкой к какому либо уникальному id, либо url, это и будет наш параметр для рандомизации. Напишем функцию, рандомизирующую как массивы, так и строки через указываемый разделитель, и возвращающую результат, либо в виде 1 рандомного элемента, либо весь рандомизированный массив. В параметр для рандомизации, к которому она будет приязана, передадим любую строку или число. Принцип в том, что из параметра будет вычислен md5 хеш, который остается неизменным, символы хеша помещаются в массив с ключами из значений входящего массива. Далее массив сортируется и готово!

 

Оставить комментарий

Ваш адрес email не будет опубликован.