-6

この形式で時間を取得しました: "192:40" 192=時間、40 = 分。

「02:30」時間を減算したいので、答えは「190:10」になります..

それを行う方法はありますか?ありがとう!

4

1 に答える 1

3

を使用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;
于 2012-09-11T18:59:09.217 に答える