0

私はこれを試しました:

$total_time_minutes = '132';
$total_time_hours = '26';

if($total_time_minutes > 60)
{
    $time = strtotime( $minutes . ' minutes'); 

    $time = date('H:i', $time); 

    $time = explode(':', $time); 

    $hours = $time[0]; 
    $minutes = $time[1]; 

    $total_time_hours += $hours;
    $total_time_minutes = $minutes;
}

これから $total_time_hours と $total_time_minutes を出力すると、26:44 になりますが、これは正しくありません。

28:12 になるはずですが、何が問題なのですか?

4

1 に答える 1

4
$total_time_minutes = '132';
$total_time_hours = '26';

if($total_time_minutes > 60)
{
    $hours = floor($total_time_minutes / 60);
    $minutes = $total_time_minutes % 60;

    $total_time_hours += $hours;
    $total_time_minutes = $minutes;
}

date()unix タイムスタンプ形式の場合に機能します。あなたが持っているのは有効なUNIXタイムスタンプではありません(はい、それがそれほど小さい可能性があることは理解していますが、この特定のケースではそうではありません)

于 2012-08-29T22:48:35.893 に答える