Wrong time for `execution_time()` function [duplicate]
Wrong time for `execution_time()` function [duplicate]
This question already has an answer here:
public function execution_time($begin = null)
if($begin == null)
return microtime(true);
else
$result = date("H:i:s", microtime(true) - $begin);
return $result;
I'm trying to count the execution time.
But the problem is when execution time is lesser then 1 hour, it writes wrong timestamp, for example:
$timeBegin = execution_time();
sleep(8);
$time_end = execution_time($timeBegin); // it shows 06:00:08
It lasts only 8 seconds, why 6 hours are appear? Why this happens and how to solve this?
This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.
2 Answers
2
You get 6 hours difference because of your timezone.
date_default_timezone_set('UTC');
Line, sets time zone to UTC and eliminates the difference.
You need to set the default timezone in your script:
date_default_timezone_set
date_default_timezone_set
Here is the working example
https://codebrace.com/editor/b16b092fb