从php中的非时间格式的小时中减去


subtract from hour not in time format in php

我得到的时间格式是:"192:40"192=小时,40=分钟。

假设我想减去"02:30"小时,那么答案将是"190:10"。。

有什么办法吗?谢谢

使用explode()分离小时/分钟片段,然后自己计算:

list( $hour, $min) = explode( ':', "192:40");
list( $hour_sub, $min_sub) = explode( ':', "02:30");
$result = ($hour - $hour_sub) . ':' . ($min - $min_sub);
echo $result;

这将打印:

190:10

如果时间结束,($min - $min_sub)将为负值。为此,可以使用以下内容:

list( $hour, $min) = explode( ':', "192:40");
list( $hour_sub, $min_sub) = explode( ':', "02:30");
$hour = $hour - $hour_sub;
$min  = $min  - $min_sub;
if( $min < 0) {
    $min = 60 + $min; // Note $min is negative
    $hour--; // Decrement hour
}
$result = $hour . ':' . $min;