PHP

【PHPの基礎】2つの時間の差分を計算する方法をマスターしよう!

今回は2つの時間の差分を計算する方法をご紹介します!

実際の開発でよく使用するので是非今回でマスターしましょう!

独学がつらくなった方は下記をご覧ください!

>>【初心者必見!】無料体験ができるプログラミングスクールをご紹介!

【基礎編】タイムスタンプを使って時間の差分を計算する

2つの時間の差分を計算するためには、タイムスタンプを使用します。

>>date関数、タイムスタンプをマスターしよう!

実際の使い方は下記の通りです。

<?php

$timestamp1 = strtotime("2022-11-01 12:00:00");

$timestamp2 = strtotime("2022-11-10 12:00:00");

// 2つの時刻の差を計算
var_dump($timestamp2 - $timestamp1);

?>

結果は下記の通りです。

上記のコードでは、「2022年11月1日12時」と「2022年11月10日12時」の時間の差を計算しています。

結果が「777600」なので、2つの時間の差は「777600」秒であることがわかります。

【応用編】どちらが新しい時刻かわからない際の差分の求め方

先ほどの2つの時間の差分の求め方は、すでに2つの時間が明確の際の求め方になります。

実際の開発では差分を求める際に片方の時間が分からない場合があります。

その際はif文を利用して計算します!

<?php

$timestamp1 = time();

$timestamp2 = strtotime("2022-11-10 12:00:00");

// 2つの時刻の差を計算

if( $timestamp1 < $timestamp2 ) {
	$time = $timestamp2 - $timestamp1;
} else {
	$time = $timestamp1 - $timestamp2;
}

var_dump($time);

?>

結果は下記の通りです。

「$timestamp1」は現在の時刻なので、この処理を行なった時刻によって、「$timestamp1」と「$timestamp2」のどちらが先の時刻(タイムスタンプの数値が大きい)か分かりません。その為、if文を使って条件分岐をすることで正しい2つの時間の差分(新しい時刻 – 古い時刻 = 差)を求めることが出来ます!

よって差分である「804004」が出力されます。

>>【PHPの基礎】if文をマスターしよう!

まとめ

今回説明した内容

✅2つの時間の差分を計算する方法

今回は以上になります。

この方法は実際の開発でもよく使用するので是非マスターしましょう!

独学に疲れた方は是非下記を参考にして下さい!

>>【初心者必見】無料体験ができるプログラミングスクールをご紹介!