どもです。
外部と通信した際、こんな感じの日時データが送られてきました。
2022-03-31T06:30:21.080Z
これはISO8601という日時のフォーマットによるものです。
Tより前が年月日、後が時分秒を指し、
末尾にZが付く場合はUTCを、+09:00など時間が付く場合はUTC以外の時間の規格を指すとのこと。
UTCとは、協定世界時(Coordinated Universal Time)のことです。
グリニッジ標準時(GMT)は聞き覚えがありましたが、最近は別の測り方になっているんですね。
で、UTCに対して日本で用いられる時間が日本標準時(JST)です。
先の例なら
2022-03-31T15:30:21+09:00
こうなります。日本国内で使用する場合は「2022-03-31 15:30:21」だけが欲しいところ。
というわけで、変換用の関数を適当なところに置いておくという旨の備忘録でした。
function convertTimeUTC_JST($UTC){
$t = new DateTime($UTC);
$t->setTimeZone(new DateTimeZone('Asia/Tokyo'));
return $t->format('Y-m-d H:i:s');
}