2012年12月04日(火) 23時03分 / PHP
PHPで現在日付(現在日時)を取得する
方法はいろいろとあるみたいですが、
私は一番好きなのはオブジェクト指向っぽい書き方。
文字列で取得するならこんな感じ。
$date = new DateTime(); $result = $date->format('Y-m-d H:i:s');
2030/12/31 15:01:20
のように戻される。
ただ、形式は合っていても、タイムゾーンが違っていると、少し時間がズレてしまうらしい。
タイムゾーンを指定して現在日時を取得するにはこんな感じ。
$date = new DateTime(null, new DateTimeZone('Asia/Tokyo')); $result = $date->format('Y-m-d H:i:s');
全体でPHPでタイムゾーンを指定するには、php.iniを編集する。
[Date] ; Defines the default timezone used by the date functions date.timezone = Asia/Tokyo
ただ私の場合、これを修正して、apacheを再起動してもタイムゾーンがおかしかった。
FuelPHPが何か影響してるのかな?
とりあえず欲しい値を求めることはできたので、これでよしとする。
なにかあったら追記していきます。
参考サイト様
http://blog.asial.co.jp/704
http://php.eweb-design.com/0201_gt.php