【PHP8.x】gettimeofday関数の使い方

作成日: 更新日:

gettimeofday関数は、現在の時刻を高精度なマイクロ秒単位で取得する関数です。この関数は、プログラムの処理時間を正確に計測したい場合や、UNIXタイムスタンプにマイクロ秒の情報を追加して詳細な時刻情報を得たい場合に特に役立ちます。

この関数はオプションの引数 $return_as_float を持ちます。この引数を false (デフォルト値) に設定するか省略した場合、現在時刻の情報が連想配列として返されます。返される連想配列には、UNIXタイムスタンプの秒部分を表す sec、マイクロ秒部分を表す usec、グリニッジ標準時からの西への分を表す minuteswest、そして夏時間補正に関する dsttime といった要素が含まれます。これにより、秒単位だけでなく、さらに細かいマイクロ秒単位での時刻情報を得ることが可能です。

一方、$return_as_float 引数に true を設定して呼び出すと、現在時刻がfloat(浮動小数点数)型で返されます。このfloat値は、UNIXタイムスタンプの秒部分とマイクロ秒部分を結合した形式で表現され、例えば「1678886400.123456」のように、秒の後にマイクロ秒が小数点以下として続きます。この形式は、特に実行時間の計測や異なる時点間の時間差を計算する際に、扱いやすく便利です。

PHP 8環境では、この関数の振る舞いは安定しており、システムが提供する最新の時刻情報を利用します。高精度な時刻情報を必要とする様々なアプリケーション開発で活用できる基本的な関数の一つです。

基本的な使い方

構文(syntax)

<?php
gettimeofday(true);
?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

array|float

現在の時刻をマイクロ秒単位まで含む配列、または秒単位までの浮動小数点数で返します。

【PHP8.x】gettimeofday関数の使い方 | いっしー@Webエンジニア