Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> md5(microtime()), насколько уникальное значение? 
:(
    Опции темы
Diesel Draft
Дата 13.8.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



microtime() - уникальность в 1 миллисекунду на 1 помпе


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
sTa1kEr
Дата 13.8.2007, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: 56
Всего: 146



Цитата(HackMan @  12.8.2007,  16:23 Найти цитируемый пост)
нет, а если не через md5() пропускать, насколько уникально uniqid()? 

Можете смело использовать в качестве имен файлов конструкцию uniqid(rand(), true); Если есть сомнения в уникальности, то запустите простенький скрипт (потребуется много памяти)
Код

$uniq = array();
for ($i = 0; $i < 1000000; $i++)
{
   $uniq[] = uniqid(rand(), true);
}
echo count(array_unique($uniq)); // 1000000

Т.е. 1000000 значений, генерированных за ~10 секунд полностью уникальны. В реальной же ситуации вряд-ли будет создаваться  больше 1000000 файлов за 10 секунд, т.ч. можно пользоваться этой функцией не опасаясь повторений.
PM MAIL   Вверх
Diesel Draft
Дата 13.8.2007, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



Кстати есть стандартная функция генерации уникального имени файла. 


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
sTa1kEr
Дата 13.8.2007, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: 56
Всего: 146



Цитата(Diesel Draft @  13.8.2007,  14:29 Найти цитируемый пост)
Кстати есть стандартная функция генерации уникального имени файла.  

Если вы про tempnam(), то она не имя файла генерирует, а создает файл с уникальным именем. Эта функция предназначена для создания временных файлов и при работе с постоянными файлами, могут возникнуть некоторые казусы, на пример, файл создастся во временной директории.
PM MAIL   Вверх
sergejzr
Дата 13.8.2007, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 5
Всего: 360



Цитата(Diesel Draft @  13.8.2007,  13:29 Найти цитируемый пост)
Кстати есть стандартная функция генерации уникального имени файла. 

есть string tempnam ( string dir, string prefix ) но про его уникальность ничего не знаю :( ..


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
HackMan
  Дата 14.8.2007, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Спасибо!
понятно, автоинкримент - самый надёжный способ  smile 

Это сообщение отредактировал(а) HackMan - 14.8.2007, 01:39


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
Diesel Draft
Дата 14.8.2007, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



HackMan, +1
И не говори, а они что то новое хотят smile 


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
HackMan
Дата 14.8.2007, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: 8
Всего: 9



Просто есть такое понятие, как "закон подлости"  smile 
У меня может ни разу не совпасть md5, а у заказчика 10 одинаковых значений подряд будет  smile 


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
SamDark
Дата 14.8.2007, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 10
Всего: 38



HackMan
Ну попользуйте SHA1, если опасаетесь... можно ещё какую-нибудь случайность влепить в параметр вроде рандомно генерящегося int-а...

Это сообщение отредактировал(а) SamDark - 14.8.2007, 17:04


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
Diesel Draft
Дата 14.8.2007, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



Влепи дату + час (час, минута, секунда, миллисекунда) + пользователь. Уникальность гарантирую. И не надо хешировать.


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
SamDark
Дата 14.8.2007, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 10
Всего: 38



Diesel Draft
Всё-равно обрабатывать надо. Это же для имени файла...


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
Diesel Draft
Дата 14.8.2007, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



В таком случае в Base64. Принайми я вот так вчера сделал з кеш. У меня там два метода:
Код

static function Get($name, $key=array())
static function Set($name, $value, $key=array(), $life=null){


Вот так вот создаю имя:
Код

$file = Conf::$CacheDirPath  . base64_encode($name) . '.txt';
file_put_contents($file, $text);


Это сообщение отредактировал(а) Diesel Draft - 14.8.2007, 18:01


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
sergejzr
Дата 14.8.2007, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 5
Всего: 360



В Base64 возможен знак равно.


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Diesel Draft
Дата 15.8.2007, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



Да, в конце. Это разве плохо? у меня работает з ним нормально.


--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1063 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.