`execution_time()`函数的时间错误

时间:2018-08-29 11:05:33

标签: php function date time execution-time

public function execution_time($begin = null)
{
    if($begin == null){
        return microtime(true);
    }
    else {
        $result = date("H:i:s", microtime(true) - $begin);
        return $result;
    }
}

我正在计算执行时间。 但是问题是当执行时间少于1小时时,它会写错时间戳,例如:

$timeBegin = execution_time();
sleep(8);
$time_end = execution_time($timeBegin); // it shows 06:00:08

仅持续8秒钟,为什么会出现6个小时?为什么会发生这种情况以及如何解决呢?

2 个答案:

答案 0 :(得分:2)

由于时区不同,您会相差6个小时。

public onBlur($event: any): void {
   this.$timeout(() => {
      if (this.$window.document.activeElement) {
         // do things
      }
   }, 1);
}

Line,将时区设置为UTC并消除差异。

答案 1 :(得分:0)

您需要在脚本中设置默认的timezone

date_default_timezone_set

这是工作示例

https://codebrace.com/editor/b16b092fb