如何将分钟转换成微时间


how to convert minutes into microtime

我有一个包含microtime(true)值的会话。像下图:

Yii::app()->user->setState('portal_logged_time', microtime(true));

现在我想在上面的会话中增加15分钟,但它应该保持在微时间。

$starttime = Yii::app()->user->getState('portal_logged_time');
// Now i want to add microtime of 15 minutes into $starttime
$endtime = // i want to do something like this ($starttime*15*60); 

我已经试过了,但它不工作$starttime*15*60

那么如何实现呢?

之后,我试图获取剩余的分钟和秒:

$duration = $endtime-$starttime;
$hours = (int)($duration/60/60);
$minutes = (int)($duration/60)-$hours*60;
$seconds = (int)$duration-$hours*60*60-$minutes*60;

microtime()提供的值以秒为单位。因此,您应该简单地执行:

$endtime = $starttime + 15*60;

注意,返回的时间戳是"with microseconds",而不是"in microseconds"。如果你传递'true'作为参数,然后计算两个float值之间的差值,这是特别好的——结果已经在秒内;它不需要除以一百万。

<?php
$temp = microtime(true);
echo "$temp";
echo "<br>";
echo date('Y-m-d h i s', $temp);
$sum = round($temp) + 900;
echo "<br>";
echo date('Y-m-d h i s', $sum);
?>
这里的

检查

像这样:

echo date("H:i:s",$endtime-$starttime);
手动:

$duration = $endtime-$starttime;
$hours = (int)($duration/60/60);
$minutes = (int)($duration/60)-$hours*60;
$seconds = (int)$duration-$hours*60*60-$minutes*60;

试试这个:

$starttime = round(microtime(true) * 1000);

$endtime = $starttime + 15*60*1000;