Согласно документам для time()
, оно
Возвращает текущее время, измеренное в количестве секунд с начала эпохи Unix (январь1 1970 00:00:00 по Гринвичу).
Акцент мой.while ($i < 1000)
, скорее всего, будет выполнен менее чем за секунду, поэтому все временные метки, скорее всего, будут одинаковыми для любого заданного запуска программы (но должны отличаться при следующем запуске).