Если у вас много пользователей, которые делают что-то, что использует time()
одновременно, вы можете получить два события, которые происходят в одну секунду, что делает time()
не таким уникальным, как mt_rand()
.Используя mt_rand()
, вы почти гарантированно получите уникальные результаты, но вы можете этого не сделать.
Другим решением будет использование microtime()
, которое возвращает текущийвремя в микросекундах, которое даст вам уникальные штампы, как это было бы необычно для событий, происходящих в одну и ту же микросекунду .Вы также можете рассмотреть uniqid()
, который генерирует идентификатор из текущего времени в микросекундах (скорее всего, используя microtime()
внутри.