FuelPHPでデフォルトのタイムゾーンと異なるタイムゾーンの日付を取得したい

はじめに

通常、FuelPHPにおけるタイムゾーンは`fuel/app/config/config.php`の`default_timezone`で設定します。

でも、ある日付を別のタイムゾーン、例えばUTC協定世界時)に変換したい時ってありますよね。

WebAPIの日付指定がUTC限定だったり。

そんな時は、Fuelには便利なクラスが用意されてるので、それを使いましょう。

やりかた

Dateクラスを使います。

コード

タイムゾーンが`Asia/Tokyo`の前提です。

`Date::display_timezonel()`でutcを設定した上で、`Date::format()`の第二引数に`true`を指定すると、`Date::display_timezonel()`の日付を取得できます。

簡単ですね。

$date = \Date::create_from_string('2015/11/11/23:00', "%Y/%m/%d%H:%M");
$date->display_timezone('utc');
echo $date->format('%Y/%m/%dT%H:%M', true);
出力
2015/11/11/14:00