0

UTC_TIMESTAMP() を使用してデータベースにタイムスタンプを保存しています。

ユーザーが選択したタイムゾーンに基づいて出力したい。これを行う小さな関数を書いてみましたが、正しく出力されません。

// Date/time converter
function convertTZ($date, $tz, $tzFormat)
{
$date = new DateTime($date);
$date->setTimezone(new DateTimeZone($tz));

return $date->format($tzFormat);
}

echo $_SESSION['dtCurrLogin'].'<br />';
echo convertTZ($_SESSION['dtCurrLogin'], 'UTC', 'F j, Y @ g:i:s a e');

データベースからの dtCurrLogin = 2013-09-12 01:23:45

上記の出力:

2013-09-12 01:23:45 2013 年 9 月 12 日 @ 午前 5:23:45 UTC

UTC から UTC に移動したため、明らかにこれは正しくないため、それらは等しくなるはずです。EST を出力するように変更すると、午前 1:23:45 と表示されますが、もちろんそれも正しくありません。

4

1 に答える 1