我有一个起始时间是20分钟
00:20:00
我想从这个时间中减去800秒,我一直在尝试使用strtotime('-800秒')但好像不起作用。
是否有其他更简单的方法可以实现这一目的?
DateTime
对象,将其增加20分钟并减去800秒,使用DateInterval
。然后获取这个修改后的DateTime
对象与一个新的DateTime
对象之间的差异。DateInterval
,它有一个format方法来格式化该间隔。$dateTime = new DateTime();
echo $dateTime
->add(new DateInterval('PT20M'))
->sub(new DateInterval('PT800S'))
->diff(new DateTime())->format("%I:%S");
06:40
$time = "00:20:00";
$unixdatetime = strtotime($time) - 800;
echo strftime("%M:%S",$unixdatetime); // 06:40
strftime()
中移除%I
会对结果更好?因为他们想要的是分钟和更低级别的时间单位。无论如何,解决方案很棒 :) - camelCase
00:20:00
属于什么?换句话说,你试图构建什么? - camelCase