繁体   English   中英

将十进制分钟转换为 HH:MM:SS

[英]Converting decimalized minutes to HH:MM:SS

我正在尝试将十进制分钟(即 0.8)转换为 PHP 中的 HH:MM:SS 格式。 我希望“0.8”的格式为“00:00:48”。 下面是我的当前代码,但它当前正在生成错误。

$decimalized_minutes = "0.8";

$duration = fmod($decimalized_minutes, 60);
$sec = $duration % 60;
$min = fmod(($duration - $sec) / 60, 60);
$hour = ($duration - 60 * $min - $sec) / 3600;
$durDate = new DateInterval("PT$hour" . "H$min" . "M$sec" . 'S');
$returnString = $durDate->format('%H:%I:%S');

echo $returnString;

但是,我目前收到此错误:

DateInterval::__construct(): Unknown or bad format (PT0H0.013333333333333M0S)

有谁知道这个错误意味着什么以及为什么我会收到它? 或者可以推荐一个库来执行这个功能?

将分钟转换为秒然后使用gmdate("H:i:s", time_in_seconds); //in your case 48 gmdate("H:i:s", time_in_seconds); //in your case 48

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM