ConFoo 2025

microtime

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

microtimeВозвращает текущую метку времени Unix с микросекундами

Описание

microtime(bool $as_float = false): string|float

Функция microtime() возвращает текущую метку времени Unix с микросекундами. Эта функция доступна только на операционных системах, в которых есть системный вызов gettimeofday().

Для измерения производительности рекомендуется использовать hrtime().

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

as_float

Если указано и установлено в true, microtime() возвратит число с плавающей точкой (float) вместо строки (string), как описано в разделе возвращаемых значений ниже.

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

По умолчанию microtime() возвращает строку (string) в формате "msec sec", где sec представляет собой количество секунд в виде десятичной дроби с начала эпохи Unix (1 января 1970 0:00:00 GMT), а msec - это количество микросекунд, прошедших после sec.

Если параметр as_float установлен в true, то microtime() возвратит результат в вещественном виде (float), представляющий собой текущее время в секундах, прошедших с начала эпохи Unix с точностью до микросекунд.

Примеры

Пример #1 Замер времени выполнения скрипта

<?php
$time_start
= microtime(true);

// Спим некоторое время
usleep(100);

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

echo
"Ничего не делал $time секунд\n";
?>

Пример #2 Пример использования microtime() и REQUEST_TIME_FLOAT

<?php
// Выбираем время сна случайным образом
usleep(mt_rand(100, 10000));

// В суперглобальном массиве $_SERVER доступно значение REQUEST_TIME_FLOAT.
// Оно содержит временную метку начала запроса с точностью до микросекунд.
$time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];

echo
"Ничего не делал $time секунд\n";
?>

Смотрите также

  • time() - Возвращает метку времени Unix на основе текущего системного времени
  • hrtime() - Получить системное время высокого разрешения

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top