【PHP入門】dateの使用方法(format)

image
書いた人 ヤマシタ

こんにちは!フリーエンジニアのヤマシタです。

PHPにはdate関数で日付設定時にさまざまなフォーマットを指定することができます。

この記事では、

・date関数のフォーマット指定の詳細
・日付をフォーマットする方法
・日付をミリ秒単位で取得する

という基本的な内容から、

・日付を指定フォーマットに変換する方法
・日付をチェックする方法

などの応用的な使い方に関しても解説していきます。

今回はそんなdate関数について、わかりやすく解説します!

date関数のフォーマット設定方法

date関数はローカルの日付や時刻を書式化する関数で、日付を扱うときによく使用されます。

date関数で日付のフォーマットを指定する場合は、以下のように記述します。

引数のフォーマットには文字列型日付のフォーマットを指定します。タイムスタンプは省略した場合は現在の時刻が取得できます。

PHPでサポートされているフォーマットのパラメータについては、以下のページに記載しています。
http://php.net/manual/ja/function.date.php

日付をフォーマットする方法

以下に基本的な日付や日時のフォーマット指定方法を記述します。

日付や日時のフォーマット指定については、date関数以外でもdatetime関数、date_format関数でも同様に指定することができます。

datetimeとdate_format関数を使用したフォーマット設定方法については、以下の記事で詳しく解説しています!
URL:準備中・・・(【PHP入門】DateTimeの使い方(format))

日付をミリ秒単位で取得する

日付をミリ秒単位で取得するためには、micortime関数を使用します。

micortime関数は、現在のUnixタイムスタンプをマイクロ秒単位まで返します。

引数にTRUEを指定すると、floatの値を返します。

以下にmicortime関数を使用して、日付を取得する方法を記述します。

日付を指定フォーマットに変換する方法

日付文字列を指定したフォーマットに変換するためには、date関数の第二引数にstrtotime関数を使用して、日付文字列をタイムスタンプに変換します。

以下に日付文字列を指定した日時に変更する方法を記述します。

サンプルでは文字列型の日付を設定し、strtotime関数でUnixタイムスタンプ(1970年からの通算秒)に変換した値を、date関数で指定したフォーマットで日付を設定しています。

日付をチェックする方法

ここでは、strptime関数とcheckdate関数を使用した日付のチェック方法を紹介します。

strptime関数

指定した日付の形式が正しいかチェックするには、strptime関数を使用します。

strptime関数は第一引数に文字列型日付、第二引数にフォーマットを指定します。

以下に指定したフォーマットが正しいかチェックする方法を記述します。

checkdate関数

指定した日付が正しいかチェックするには、checkdate関数を使用します。

checkdate関数は第一引数に月、第二引数に日、第三引数に年を指定します。

以下に指定した日付が正しいかチェックする方法を記述します。

曜日を日本語取得する方法

date関数の引数に’w’を指定すれば曜日番号を取得することが可能です。

以下のように記述すれば、本日の日付から曜日番号が取得できます。

曜日番号は、指定した日付から取得することも可能です。

実際に曜日を日本語に変換する方法については、以下の記事で詳しく解説しています!

まとめ

ここではdate関数を使用してさまざまなフォーマット指定の方法や、日付やフォーマットをチェックする方法、曜日を取得する方法などについて解説しました。

PHPに限らず、システム開発において日付のデータは作業履歴やログ・ファイル出力時など、さまざまな処理で使われる非常に重要な情報となります。

もし、date関数の使用方法を忘れてしまったら、この記事を思い出してくださいね!


33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーでWEBエンジニアをやられている濱口直行さん。33歳で、プログラミングを学び始め、約半年という短い期間で独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


自分にプログラミングなんて・・・と思っていませんか?

今後10年間で今ある職業の『77%』はなくなると言われています。

人工知能や機械学習を筆頭にVR、AR、ドローンなどの最先端技術の発達はこれからのあなたの働き方に間違いなく影響を与えるでしょう。

将来を見据えてプログラミングができるようになってエンジニアになりたい、自分だけにしかできないクリエイティブな仕事がしたい、、、とお考えの方も少なくないでしょう。

と、同時に「難しそう、、自分にはできないだろう、、、」と諦めている方も多いのではないでしょうか。

弊社マンツーマンレッスンは、お一人お一人に専属のインストラクターがつくので、通常のスクールでは難しい、オリジナルアプリ開発や、フリーランスとしての仕事獲得まで支援しています。

まずは『無料体験レッスン』で弊社コンサルタントと一緒にあなた専用の学習カリキュラムを考えてみてはいかがでしょうか?

詳しくは下の画像をクリックしてください。

cta_mtm2

プログラミング学習者必見

専属講師に質問し放題、レッスンし放題、最短1ヶ月でフリーランスエンジニア
プログラミング学習カリキュラム無料公開中
Ruby学習カリキュラム無料公開中
 1記事最大11,000円!テックライター募集


LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

ヤマシタ

フリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、今まで200本以上の執筆経験があります