PHP

【PHP】日時を計算する2つの方法

投稿日:2016年7月17日 更新日:


現在日を起点にして日時を取得して処理したいことってよくありますよね。

例えば、現在日時の1日前のデータのステータスを変更するとか。

今回は、PHPで日時を計算する2つ方法をご紹介します。

  • PHPの内部関数のdate関数strtotime関数を組み合わせる方法。
  • 外部ライブラリのCarbonを使って日付計算をする方法。

では、それぞれ詳しく解説して行きます!

スポンサーリンク

date関数とstrtotime関数を組み合わせる方法

まずは、内部関数のdate関数とstrtotime関数を組み合わせて、日時を計算する方法について。

こちらは、ライブラリをインストールする必要もないので、手軽ですね。

関数のリファレンス

date関数

dateのPHPリファレンス

strtotime関数

strtotimeのPHPリファレンス

date()とstrtotime()で時刻を取得するサンプル

date関数に渡す$timestampパラメータにstrtotime関数の戻り値を指定する事で様々な時刻が取得可能です。

年、月、週、日、時、分、秒とほぼ全ての単位で計算可能です!

使い方は簡単なので、サンプルソースを見るのが早いでしょう!

意外と簡単に日付の計算が出来ることがおわかり頂けたでしょうか。

簡単な日付の計算は、内部関数だけでもサクッと出来ちゃいますね!

Carbonを使って日付計算をする方法

もうひとつの方法は、外部ライブラリのCarbonを利用する方法。

このライブラリは、日時の操作を簡単にするライブラリで、有名なフレームワーク「Laravel」にも組み込まれているのでメジャーなライブラリと言えるでしょう。

インストール方法

Composerを使ってインストールしましょう。

使い方

サンプルはこちら。

date関数とstrtotime関数を組み合わせる方法よりも直感的で分かりやすいですね。

月初や週始めも、関数1つで取れるのも素晴らしいです。

ライブラリをインストールするは少し手間ですが、Carbonを使ったほうがプログラムは綺麗になりますね!

フォスターフリーランス

おわりに

PHPで日時を操作する方法のご紹介でした。

簡単なプログラムなら、内部関数でも解決できますが、それなりの規模のシステムを構築するならCarbonを導入するのも良いですね!

個人的には、最近発見したCarbonを気に入っています。

最後までお読み頂きありがとうございました!

スポンサーリンク


-PHP

執筆者:

関連記事

【PHP】Shift-JISにエンコードしたCSVが文字化けするのはBOMが原因?

PHPでShift-JISに変換エンコードしたCSVをダウンロードする機能を実装したのですが、日本語の文字化けが発生。 この問題がちょっとややこしくて解決するのに時間がかかりました。 なんと文字化け …

【PHP】リモートファイル(SSHなど)をfreadする時は注意!正しい実装方法

PHPでリモートファイルをfreadする時は注意が必要です。 はい、お察しの通り僕はこれで不具合出しちゃいました。笑 同じように不幸なプログラマーが増えないように、 また既に同じ不具合を出してしまった …

Windows/XAMPP/Eclipseでローカルに複数サイトの開発環境構築

Windows/XAMPP/Eclipseでバーチャルホストを使って複数の開発環境を構築する方法についてのメモです。 (Macの環境構築方法はMac/XAMPP/Eclipseでローカルに複数サイトの …

【EC-CUBE2】 SQLをデバック出力する方法

EC-CUBE2で実行されるSQLをデバッグ出力する方法について。 コードをコピペする事で、実行されたSQLを画面にデバッグ出力できます。 スポンサーリンク 目次EC-CUBE2でSQLをデバックする …

【PHP】Mac/XAMPP/Eclipseでローカルに複数サイトの開発環境構築

Mac/XAMPP/Eclipseでバーチャルホストを使って複数の開発環境を構築する方法についてのメモです。 (Windowsでの構築方法はWindows/XAMPP/Eclipseでローカルに複数サ …

フォスターフリーランス
プロフィール

このサイトを運営しているこへいんです。
アングラーのフリープログラマー。 主にプログラミングと釣の話を発信しています。
プログラミングで自由になり思う存分に釣りをしまくる生活実践中。
詳しいプロフィールはこちら