PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

microtime - 現在の Unix タイムスタンプをマイクロ秒まで返す | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

microtime

(PHP 4, PHP 5, PHP 7)

microtime 現在の Unix タイムスタンプをマイクロ秒まで返す

説明

mixed microtime ([ bool $get_as_float = false ] )

microtime() は、現在の Unix タイムスタンプをマイクロ秒単位で返します。 この関数は、gettimeofday() システムコールをサポートする オペレーティングシステムでのみ使用できます。

パラメータ

get_as_float

TRUE を指定すると、microtime() は文字列ではなく float を返すようになります。詳細は、返り値の説明を参照ください。

返り値

デフォルトでは、microtime() は "msec sec" 形式の文字列を返します。ただし、sec は Unix エポック (1970 年 1 月 1 日 0:00:00 GMT) からの経過秒数、msecsec から経過したマイクロ秒数を秒単位で表したものです。

get_as_floatTRUE に設定すると、microtime() は Unixエポック からの経過秒数を マイクロ秒で正確になるように float で表したものを返します。

例1 microtime() でタイマスクリプト実行

<?php
/**
 * PHP 5の動作を模擬する簡単な関数
 */
function microtime_float()
{
    list(
$usec$sec) = explode(" "microtime());
    return ((float)
$usec + (float)$sec);
}

$time_start microtime_float();

// しばらくスリープ
usleep(100);

$time_end microtime_float();
$time $time_end $time_start;

echo 
"Did nothing in $time seconds\n";
?>

例2 PHP 5 におけるタイマスクリプト実行

<?php
$time_start 
microtime(true);

// しばらくスリープ
usleep(100);

$time_end microtime(true);
$time $time_end $time_start;

echo 
"Did nothing in $time seconds\n";
?>

例3 microtime()REQUEST_TIME_FLOAT の例 (PHP 5.4.0 以降)

<?php
// ランダムな時間のスリープ
usleep(mt_rand(10010000));

// PHP 5.4.0 以降は、REQUEST_TIME_FLOAT をスーパーグローバル $_SERVER から取得できるようになりました。
// ここにはリクエスト開始時のタイムスタンプがマイクロ秒の精度で記録されています。
$time microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];

echo 
"Did nothing in $time seconds\n";
?>

参考

  • time() - 現在の Unix タイムスタンプを返す


忘却曲線を使ってこの関数を確実に記憶に残す

フォーラムで「microtime - 現在の Unix タイムスタンプをマイクロ秒まで返す」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | microtime - 現在の Unix タイムスタンプをマイクロ秒まで返す」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: