PHP setTimezone似乎只对空值有效

PHP setTimezone似乎只对空值有效,php,mysql,Php,Mysql,我真的不明白,如果数据库中存储了实际的时间值,为什么时区转换似乎不起作用。如果该值为NULL,则此代码似乎可以正确转换时间 $tz = "America/Chicago"; date_default_timezone_set('UTC'); $timezone = new DateTimeZone($tz); $tmp_dt = new DateTime($row_ShowsRS['actual_datetime']); $tmp_dt->setTimezone($tim

我真的不明白,如果数据库中存储了实际的时间值,为什么时区转换似乎不起作用。如果该值为NULL,则此代码似乎可以正确转换时间

$tz = "America/Chicago";        
date_default_timezone_set('UTC');
$timezone = new DateTimeZone($tz);

$tmp_dt = new DateTime($row_ShowsRS['actual_datetime']);
$tmp_dt->setTimezone($timezone);
$actual_datetime = $tmp_dt->format('Y-m-d H:i:s');
日期时间都以UTC格式存储在数据库中。我只是想把这些时间从数据库中提取出来,并显示在用户的本地时区。

你能发布var_dump$row_ShowsRS['actual_datetime']的输出吗;?请随代码提供数据。你有什么,你得到什么,你期望什么?