と のような 2 回が10:00 am
あり7:00 pm
ます。
そして、これから合計時間を取得したいと思います。その時から私は9時間を取らなければなりません。
どうすればいいですか?
で分解しました:
が、10 から 7 を引いて結果 3 を返しますが、これは 9 を返すはずなので正しくありません。
<?php echo strtotime('7:00 pm')-strtotime('10:00 am');?>
タイムスタンプの差分を取得する
編集
echo (strtotime('07:00 pm')-strtotime('10:00 am'))/(60*60); // 9 を表示
60*60 = 1 時間
編集
$fromTime = '3:00 pm';
$toTime = '12:00 am';
$timediff = (strtotime($toTime)-strtotime($fromTime))/(60*60);
echo $timediff >= 0 ? $timediff : (24 + $timediff);
PHP のstrtotime関数を使用してこれを UNIX 時間に変換できるため、さらに計算を行うことができます。
am
orのpm
情報を手に入れることができると思います。この情報を使用してif()
、正しいものにすることができます。
If()
午後の場合は 12 時間を追加し、午後でない場合は何もしません。
比較している時間でこれを行います:
if (pm==1){
time+=12;
}
10:00 am = false
10:00になり、7:00 pm = true
19:00になります
19:00 - 10:00 = 9 hours = win
.
これにより、より効果的に役立つと思います
<?php echo date('H:i:s',strtotime('7:00 pm')-strtotime('10:00 am'));?>