|
|
|
| Нужно сгенерить уникальные имена для файлов. они должно быть действительно уникальным, ибо файлы создаются по десятку другому и очень быстро. Раньше для этого использовал md5(uniqid(time())); - но вот сейчас получается что несколько разных файлов имеют одинаковые имена - грешу на эту конструкцию. Чем бы её заменить, чтобы уж наверняка? | |
|
|
|
|
|
|
|
для: NIK
(16.02.2008 в 18:57)
| | Интересно, как это "одинаковые имена", если вы используете в кач-ве параметра время? | |
|
|
|
|
|
|
|
для: ddhvvn
(16.02.2008 в 19:16)
| | Время - вещь не уникальная, особенно если два запроса потупают одномоменто...
Я тож это заметил! | |
|
|
|
|
|
|
|
для: Evgen
(16.02.2008 в 19:28)
| | К существующей конструкции добавить конструкцию, которая из определённых символов каждый раз выдаёт разный результат. Соединив, можно получить более совершенную генерилку названий для файлов. | |
|
|
|
|
|
|
|
для: ddhvvn
(16.02.2008 в 19:16)
| | я думаю вполне возможно, т.к. time() даёт точность до секунд, а за 1 секунду можно и несколько файлов успеть записать. | |
|
|
|
|
|
|
|
для: NIK
(16.02.2008 в 18:57)
| | может так?
<?
$filename = md5(microtime(1).rand());
?>
|
| |
|
|
|
|
|
|
|
для: а-я
(16.02.2008 в 19:35)
| | =))) Мне сначала и показалось, что там микротайм! тока можно без (1) | |
|
|
|
|
|
|
|
для: NIK
(16.02.2008 в 18:57)
| | tempnam() | |
|
|
|
|
|
|
|
для: Unkind
(16.02.2008 в 20:23)
| |
<?php
$rand = substr(md5(uniqid(rand(), true)), 0, rand(7, 13));
echo $rand;
?>
|
| |
|
|
|