10/31の10時から10/31の19時半までの時間差を計算してみましょう。
コンピュータをかいさなければ「9時間半」ということがすぐにわかります。
これをphpで実装する方法を紹介します。
1 2 |
$start = "2020-10-31 10:00"; $end = "2020-10-31 19:30"; |
続いて、それぞれの時間を1970年1月1日からの秒数に変更します。
1 2 |
$startSecond = strtotime($start); $endSecond = strtotime($end); |
これで計算できるようになりました。
引き算するだけで計算できます。
1 |
$saSecond = $endSecond - $startSecond; |
最後に、時間の形に整えることで「9:30」という形式で表示されます。
1 |
$sa = gmdate("H:i", $saSecond) ; |
なお、ここでは「H:i」で時間・分を表示していますが、ここに年や日付を表示すると「1970年1月1日」となってしまいます。
システムの時間は1970年1月1日から始まっており、そこを基準にこの差分の秒数を表示することで対応しています。
つまり、この差分を計算するはあくまで差分を計算する方法であり、年や日付を表示するものではないということです。