(PHP 4, PHP 5, PHP 7, PHP 8)

gettimeofdayВозвращает текущее время


gettimeofday(bool $as_float = false): array|float

Функция является интерфейсом к системному вызову gettimeofday(2). Она возвращает ассоциативный массив, содержащий информацию, полученную от системного вызова.

Список параметров


Если установлено в true, вместо массива возвращается число с плавающей точкой.

Возвращаемые значения

По умолчанию возвращается массив (array). Если установлен параметр as_float, то возвращается число с плавающей точкой (float).

Ключи массива:

  • "sec" - количество секунд, прошедших с эпохи Unix
  • "usec" - микросекунды
  • "minuteswest" - смещение к западу от Гринвича, в минутах
  • "dsttime" - тип коррекции летнего времени


Пример #1 Пример использования функции gettimeofday()



Результатом выполнения данного примера будет что-то подобное:

    [sec] => 1073504408
    [usec] => 238215
    [minuteswest] => 0
    [dsttime] => 1


add a note add a note

User Contributed Notes 2 notes

middleto at pilot dot msu dot edu
24 years ago
The types of DST correction (from sys/time.h on a Linux system):
0     Not on DST
1     USA DST
2     Austrailian DST
3     Western European DST
4     Middle European DST
5     Eastern European DST
6     Canada DST
7     Great Britain and Eire DST
8     Rumania DST
9     Turkey
10     Australian DST (with shift in 1986)
lucas dot karisny at linuxmail dot org
18 years ago
A small improvement on getTimer.  Using vsprintf instead of sprintf there is no need to assign the array:

function utime()
  return (float) (
vsprintf('%d.%06d', gettimeofday()));

In a test on my machine getTimer took 0.037519 seconds to run through 1000 iterations versus 0.027912 seconds for utime.  In total, utime runs about 25% quicker.  The use is negligible in an actual benchmarking scenario, but this could provide a slightly more accurate estimate.  Of course the time it takes to run the function could always be stored at the start and subtracted from your total value each time it is run.
To Top