如何在PHP中更改现有时间戳的时区?

时间:2010-01-19 16:26:14

标签: php datetime date time timezone

日期和时间函数的代码:

function date_and_time($format,$timestamp) {

$date_and_time = date($format,$timestamp);
return $date_and_time;

}

然后显示它的代码:

    <?php

        echo date_and_time("dS F Y", strtotime($profile[last_activity_date_and_time]));

    ?>

$ profile [last_activity_date_and_time]的值是2010-01-18 14:34:04

显示时显示为2010年1月18日 - 02:34 pm

但是,有没有办法改变它显示的时区?

2 个答案:

答案 0 :(得分:18)

不确定这是否是您要找的,但请尝试DateTime

date_default_timezone_set('Europe/London');

$datetime = new DateTime();
$datetime->setTimestamp($yourTimestamp);
echo $datetime->getTimezone()->getName();
echo $datetime->format(DATE_ATOM);

$la_time = new DateTimeZone('America/Los_Angeles');
$datetime->setTimezone($la_time);
echo $datetime->getTimezone()->getName();
echo $datetime->format(DATE_ATOM);

答案 1 :(得分:0)

您可以使用this function设置默认时区:

date_default_timezone_set('Europe/London');