В PHP функции исходного кода uniqid() имеют следующий код C: (я удалил некоторые типы укоротить его)вопросы, связанные с исходным кодом PHP uniqid()
//...
struct timeval tv;
gettimeofday(&tv, NULL);
int sec = (int) tv.tv_sec;
int usec = (int) (tv.tv_usec % 0x100000);
// The max value usec can have is 0xF423F,
// so we use only five hex digits for usecs.
printf("%08x%05x", sec, usec);
//...
Если мы помещаем критику в сторону, попробуйте создать 64-битную метку времени.
0xF423F вероятно CLOCKS_PER_SEC - 1 (CLOCKS_PER_SEC десятичный +1000000),
но где это 0x100000 пришли и что может быть причиной, чтобы использовать модуль вместо побитового и?
На ваш вопрос может ответить только человек, который написал код, кто-то еще может только реально рассуждать о причине –
Я не согласен с вами. Код не так уж трудно объяснить, но мне не хватает понимания о миллисекундном расчете природы. – Nick
'Какая может быть причина' на самом деле не может быть ответом ни на что иное, кроме спекуляций, кроме самого писателя –