Как отформатировать разницу во времени с микросекундами

Я хочу получить разницу во времени между двумя разами ниже. Формат разницы во времени должен составлять часы, минуты, секунды, а затем микросекунды. Я хочу получить окончательный ответ только в этом формате.

$start = date(' H:i:s'.substr((string)microtime(), 1, 6));
//some code
$end = date(' H:i:s'.substr((string)microtime(), 1, 6));
//$interval = ???(end  time - start time)

0

Решение

На это отвечает пример № 2 из руководство по микротайм:

Пример # 2 Время выполнения скрипта в PHP 5

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

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

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

Объедините это с этот ответ и вы получите:

$time_start = microtime(true);

// Do something here that takes time ...

$time_end = microtime(true);

$time = $time_end - $time_start;
$micro = sprintf("%06d", ($time - floor($time)) * 1000000);
$dateObj = new DateTime( date("Y-m-d H:i:s.$micro", $time) );

$interval = $dateObj->format("H:i:s.u");

Если разница во времени составит одну минуту, 23 секунды и 501293 микросекунды, то $ разница будет иметь это строковое значение:

00: 01: 23,501293

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]