gettimeofday

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

gettimeofday現在の時間を得る

説明

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

この関数は、gettimeofday(2) へのインターフェイスです。 この関数は、システムコールから返されたデータを有する連想配列を返します。

パラメータ

as_float

true を指定すると、配列ではなく float で返します。

戻り値

デフォルトでは配列を返します。as_float が設定されている場合は float を返します。

配列のキー:

  • "sec" - UNIX エポックからの秒
  • "usec" - マイクロ秒
  • "minuteswest" - グリニッジ基準の分
  • "dsttime" - 夏時間補正の型

例1 gettimeofday() の例

<?php
print_r
(gettimeofday());

echo
gettimeofday(true);
?>

上の例の出力は、 たとえば以下のようになります。

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

1073504408.23910

add a note add a note

User Contributed Notes 2 notes

up
5
middleto at pilot dot msu dot edu
25 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)
up
-2
lucas dot karisny at linuxmail dot org
19 years ago
A small improvement on getTimer.  Using vsprintf instead of sprintf there is no need to assign the array:

<?php
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