DateTime::setTimezone

date_timezone_set

(PHP 5 >= 5.2.0, PHP 7)

DateTime::setTimezone -- date_timezone_set设置 DateTime 对象的时区

说明

面向对象风格

public DateTime::setTimezone ( DateTimeZone $timezone ) : DateTime

过程化风格

date_timezone_set ( DateTime $object , DateTimeZone $timezone ) : DateTime

设置 DateTime object 的时区。

参数

object

仅过程化风格:由 date_create() 返回的 DateTime 类型的对象。此函数会修改这个对象。

timezone

DateTimeZone 对象, 表示要设置为时区。

返回值

返回被修改的 DateTime 对象, 或者在失败时返回 FALSE.

更新日志

版本 说明
5.3.0 将返回值从NULL改为 DateTime 类型。

范例

Example #1 DateTime::setTimeZone() 例程

面向对象风格

<?php
$date 
= new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";

$date->setTimezone(new DateTimeZone('Pacific/Chatham'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";
?>

过程化风格

<?php
$date 
date_create('2000-01-01'timezone_open('Pacific/Nauru'));
echo 
date_format($date'Y-m-d H:i:sP') . "\n";

date_timezone_set($datetimezone_open('Pacific/Chatham'));
echo 
date_format($date'Y-m-d H:i:sP') . "\n";
?>

以上例程会输出:

2000-01-01 00:00:00+12:00
2000-01-01 01:45:00+13:45

参见

关注编程学问公众号