函数介绍: DateTime::setTimezone() 是一个用于设置 DateTime 对象的时区的 PHP 方法。它允许您将 DateTime 对象的时区更改为另一个支持的时区。
用法: DateTime::setTimezone() 方法的基本用法如下:
public void DateTime::setTimezone ( DateTimeZone $timezone )
这个方法接受一个 DateTimeZone 对象作为参数,用于指定要设置的时区。它会修改原始 DateTime 对象的时区。
示例: 下面是一个使用 DateTime::setTimezone() 方法的示例,将一个日期时间对象的时区更改为美国洛杉矶的时区:
$date = new DateTime("2022-01-01 12:00:00", new DateTimeZone("Asia/Shanghai"));
echo $date->format("Y-m-d H:i:s"); // 输出:2022-01-01 12:00:00
$date->setTimezone(new DateTimeZone("America/Los_Angeles"));
echo $date->format("Y-m-d H:i:s"); // 输出:2021-12-31 20:00:00
在上面的示例中,我们首先创建一个包含 "2022-01-01 12:00:00" 的 DateTime 对象,并将其时区设置为 "Asia/Shanghai"。然后,我们使用 setTimezone() 方法将时区更改为 "America/Los_Angeles"。最后,我们通过 format() 方法输出修改后的日期时间。
请注意,DateTime::setTimezone() 方法会修改原始 DateTime 对象的时区,而不是创建一个新的 DateTime 对象。