H
を使用します
代わりに:
$test = 'Fri, 15 Jan 2016 15:14:10 +0800';
$t = date('Y-m-d H:i:s',strtotime($test));
echo $t;
Gは同じである必要がありますが、先行ゼロはありません。 PHPが+0800
とは異なるタイムゾーンに設定されていると思われます 。タイムゾーンを確認できますか(date_default_timezone_get()
)?
編集
OPは、彼のタイムゾーンがUTCに設定されていることを確認しました。この場合、date
として、午前7時を表示するという完全な意味を覆い隠します。 PHPのデフォルトのタイムゾーンを使用します。
タイムゾーンを「継承」する一方で、柔軟性を高めたい場合は、に切り替える必要があります。 DateTime
:
echo (new DateTime($test))->format("Y-m-d H:i:s");