date_timezone_get()函数返回相对于给定DateTime的时区
date_timezone_get()函数是DateTime::getTimezone的别名。 它接受DateTime对象作为参数,并返回相对于给定日期/时间(对象)的时区对象。
date_timezone_get($object)
| 序号 | 参数及说明 |
|---|---|
| 1 | object (必需) 这表示您需要时区的DateTime对象。 |
该函数返回一个DateTimeZone对象。如果失败,则返回布尔值false。
此函数最初是在PHP版本5.2.1中引入的,并且可用于所有更高版本。
以下是date_timezone_get()函数的示例-
<?php
$date = date_create("25-09-1989");
$res = date_timezone_get($date);
$timeZone_name = timezone_name_get($res);
print("Timezone: ".$timeZone_name);
?>测试看看‹/›输出结果
Timezone: UTC
以下示例设置时区并使用date_timezone_get()函数将其取回。
<?php
$tz = new DateTimeZone("Indian/Mahe");
$date = date_create("25-09-1989", $tz);
$res = date_timezone_get($date);
print_r($res);
?>测试看看‹/›输出结果
DateTimeZone Object ( [timezone_type] => 3 [timezone] => Indian/Mahe )
该date_timezone_get()函数只是给你的时区对象,你可以得到它的名字使用timezone_name_get() -
<?php
$tz = new DateTimeZone("Indian/Mahe");
$date = date_create("25-09-1989", $tz);
$res = date_timezone_get($date);
$timeZone_name = timezone_name_get($res);
print("默认时区: ".$timeZone_name);
?>测试看看‹/›输出结果
默认时区: Indian/Mahe
更改默认时区
<?php
echo "旧时区是 ". date_default_timezone_get();
$timeZone = 'Asia/Shanghai';
if( date_default_timezone_set( $timeZone) ){
#现在得到这个时区。
echo "新时区是 ". date_default_timezone_get();
}
?>测试看看‹/›输出结果:
旧时区是 UTC 新时区是 Asia/Shanghai