[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Генерирование уникального значения
vital
Какие у кого есть наработки мб?
Мне надо генерировать идентификатор(урл) на одну фиговину, естественно, на каждую фиговину свой урл. Фиговин _очень_ много.

Не долго думая сделал так.

private final function getUniqueUrlId()
{
//балблаблбла в массиве $urls все уже сущевствующие урлы
do
{
$url = md5(uniqid() . rand(0, 100)); //генерим
} while (in_array($url, $urls)); //проверряем есть ли такое уже.
//блаблабла

return $url;
}

Вот такой вот велосипед. Мб есть что готовое и более правильное?



Спустя 2 часа, 3 минуты, 40 секунд (12.03.2011 - 14:58) vagrand написал(а):
Чтоб уж наверняка:


$url = md5(uniqid(time() . rand(0, 100000) . microtime(), true));

Спустя 5 минут, 34 секунды (12.03.2011 - 15:04) vital написал(а):
Так а на сколько это оптимально, при том что массив со всеми значениями будет очень большой7 мб есть что более правильное. частая задача.. Давно должны бы придумать красивое и быстрое решение, коим это явно не является.

Спустя 2 часа, 5 минут, 21 секунда (12.03.2011 - 17:09) vagrand написал(а):
Я тебе написал пример для которого не нужна проверка. Значение всегда будет уникальным


_____________
"Нужно быть готовым прислушиваться к тем, кто может тебя чему-нибудь научить. Иначе ты никогда не вырастешь."

Откровенно я никому ниразу не нагрубил. А дать подзатыльник зарвавшемуся юнцу, так это и ему на пользу, и мне в удовольствие. © AllesKlar
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.