PHPのdate_format()関数の使い方を徹底解説!日付フォーマットの基本と書式指定子一覧
PHPのdate_format()関数は、DateTimeオブジェクトを指定した書式に従って整形し、文字列として返す関数です。日付や時刻を自由な形式で表示したい場合に非常に便利な、日付処理の基本となる関数の一つです。
構文
date_format(obj, format)
パラメータ(引数)
obj − フォーマット対象となる DateTime オブジェクトを指定します。
format − 出力結果の書式を指定します。主な書式指定子は以下のとおりです。
日に関する指定子
d − 日(01〜31)。先頭にゼロが付きます。
D − 曜日の省略形(3文字。例:Mon、Tue)。
j − 日(1〜31)。先頭にゼロが付きません。
l(小文字のL)− 曜日の完全な表記(例:Monday、Sunday)。
N − ISO-8601形式の曜日番号(月曜が1、日曜が7)。
S − 英語の序数接尾辞(st、nd、rd、th の2文字)。j と組み合わせて使うと効果的です。
w − 曜日の数値表現(日曜が0、土曜が6)。
z − 年間の通算日(0〜365)。
週・月・年に関する指定子
W − ISO-8601形式の週番号(週は月曜から開始)。
F − 月の完全な英語表記(January〜December)。
m − 月の数値表現(01〜12)。先頭にゼロが付きます。
M − 月の省略形(3文字。例:Jan、Dec)。
n − 月の数値表現(1〜12)。先頭にゼロが付きません。
t − 指定した月の日数(28〜31)。
L − うるう年かどうか(うるう年なら1、それ以外は0)。
o − ISO-8601形式の年番号。
Y − 4桁の年(例:2018)。
y − 2桁の年(例:18)。
時刻に関する指定子
a − 小文字の am または pm。
A − 大文字の AM または PM。
B − Swatchインターネット時間(000〜999)。
g − 12時間制の時(1〜12)。先頭にゼロが付きません。
G − 24時間制の時(0〜23)。先頭にゼロが付きません。
h − 12時間制の時(01〜12)。先頭にゼロが付きます。
H − 24時間制の時(00〜23)。先頭にゼロが付きます。
i − 分(00〜59)。先頭にゼロが付きます。
s − 秒(00〜59)。先頭にゼロが付きます。
タイムゾーン・その他の指定子
e − タイムゾーン識別子(例:UTC、Asia/Tokyo)。
I(大文字のi)− サマータイムかどうか(サマータイム中なら1、それ以外は0)。
O − グリニッジ標準時(GMT)との差(時間単位。例:+0100)。
T − PHPマシンのタイムゾーン設定(例:EST、MDT)。
Z − タイムゾーンオフセット(秒単位)。UTCより西は負、東は正(-43200〜43200)。
c − ISO-8601形式の日付(例:2004-02-12T15:19:21+00:00)。
r − RFC 2822形式の日付(例:Thu, 21 Dec 2000 16:01:07 +0200)。
U − Unixエポック(1970年1月1日 00:00:00 GMT)からの経過秒数。
戻り値
date_format()関数は、成功した場合は整形された日付文字列を返し、失敗した場合は FALSE を返します。
使用例
以下は、date_format()関数を使って日付を「Y/m/d H:i:s」形式で表示するサンプルコードです。
<?php
$dt = date_create("2018-09-30");
echo date_format($dt,"Y/m/d H:i:s");
?>実行結果
2018/09/30 00:00:00
このように、date_create()で作成したDateTimeオブジェクトに対してdate_format()を使うことで、任意の形式で日付を出力できます。日本語サイトでよく使われる「2024年5月1日」のような形式にしたい場合は、「Y年n月j日」のように指定することも可能です。
-
【PHP入門】date()関数の使い方を徹底解説!日付・時刻の書式指定子一覧と実行例
PHPの date() 関数は、ローカルの日付や時刻を任意の形式に整形(フォーマット)するための関数です。整数型のUnixタイムスタンプを引数として渡すと、その時刻をもとに整形された文字列が返されます。タイムスタンプを省略した場合は、現在の時刻が自動的に使用されます。 基本構文 date(format, timestamp) パラメータ timestamp − 整数型のUnixタイムスタンプ。省略した場合は、現在のローカル時刻がデフォルトで使用されます。 format − 結果の出力形式を指定する書式文字列。主な指定文字は以下のとおりです。 日に関する書式指定子 d − 日(01〜31)。
-
PHPのgmdate()関数とは?GMT/UTC基準で日時をフォーマットする方法を解説
PHPのgmdate()関数とはgmdate()関数は、GMT/UTC(グリニッジ標準時)に基づいた日付・時刻を整形し、文字列として返すPHPの組み込み関数です。date()関数とよく似ていますが、date()がサーバーのローカルタイムゾーンを使用するのに対し、gmdate()は常にGMT/UTCを基準として処理する点が大きな違いです。国際的なサービスやログの記録など、タイムゾーンに依存しない統一された日時表示が必要な場面で活躍します。構文gmdate(format, timestamp)パラメータformat:出力する日付文字列の形式を指定します。使用可能な書式指定文字は以下の通りです。日に