PHP 現在日時の取得と表示形式(DateTime)

PHPの現在日時の取得と表示形式のサンプルです。

確認環境
・PHP 7.1.8
・XAMPP 7.1.8

目次

サンプル 現在日時を取得する(DateTimeクラス)
  現在日時を取得する(date)
  タイムゾーンの設定

現在日時を取得する(DateTimeクラス)

public format ( string $format ) : string
  • DateTimeクラスのインスタンスを生成し、formatメソッドで指定した書式にします。
  • PHP5.2.0以降で使用できます。

DateTimeクラスで現在日時を表示するサンプルです。

<?php

$date1 = new DateTime();

$date2 = $date1->format("Y/m/d H:i:s");
print $date2; // 2017/08/09 19:11:00

$date3 = $date1->format("Y/m/d");
print $date3; // 2017/08/09

$date4 = $date1->format("Y年m月d日 H時i分s秒");
print $date4; // 2017年08月09日 19時12分47秒

$date5 = $date1->format("YmdHis");
print $date5; // 20170809191418

$date6 = $date1->format("Y年m月d日 H時i分s秒 D");
print $date6; // 2017年08月09日 19時17分01秒 Wed

?>

5行目は、年月日をスラッシュ区切りで、時分秒をコロン区切りにしています。
8行目のように年月日のみの出力もできます。
11行目は、漢字をつけています。
14行目は、YYYYMMDDhhmmss形式で表示しています。
17行目は、曜日を表示しています。

以下は、PHPマニュアルのdate関数のリンクです。
https://www.php.net/manual/ja/class.datetime.php

フォーマットの文字
説明
Y 年4桁
m 月(01-12)
n 月(1-12)
d 日(01-31)
j 日(1-31)
H 時間(00-23)
i 分(00-59)
s 秒(00-59)
w 曜日(0が日曜日-6が土曜日)
D 曜日(Sun-Sat)

現在日時を取得する(date)

date ( string $format [, int $timestamp = time() ] ) : string
  • date関数は2038年問題があり、2038年1月19日までしか使えないので使用しない方が良いです。

date関数で現在日時を表示するサンプルです。

<?php

$date1 = date("Y/m/d H:i:s");
print $date1; // 2017/08/09 19:11:00

$date2 = date("Y/m/d");
print $date2; // 2017/08/09

?>

3行目は、年月日をスラッシュ区切りで、時分秒をコロン区切りにしています。
6行目のように年月日のみの出力もできます。

タイムゾーンの設定

タイムゾーンの設定をphp.iniで行うことができます。
XAMPPでの例です。

1.XAMPPコントロールパネルのconfigをクリックします。

 

2.PHP(php.ini)をクリックします。

 

3.date.timezoneで検索します。
Europe/BerlinをAsia/Tokyoに書き換えます。

変更前

変更後

 

4.Apacheを再起動して画面を表示するとAsia/Tokyoのタイムゾーンで表示されます。

 

△上に戻る