date_offset_get()函数返回时区偏移量
date_offset_get()是DateTime::getOffset的别名。 此函数接受DateTime类的对象,并返回给定日期的时区偏移量。
date_offset_get($object)
序号 | 参数及说明 |
---|---|
1 | object (必需) 这是一个DateTime对象,您需要为其提供时区偏移量。 |
date_offset_get()函数返回给定DateTime对象的时区偏移量。如果失败,此函数将返回布尔值false。
此函数最初是在PHP版本5.2.1中引入的,并且可用于所有更高版本。
以下使用date_offset_get()函数的示例-
<?php $date = new DateTime(); //$timeZone = date_default_timezone_get($date); $offset = date_offset_get( $date ); print("Offset: ".$offset); ?>测试看看‹/›
输出结果
Offset: 0
在以下示例中,我们将创建一个带有时区的日期,并获取其偏移量-
<?php $dateTimeObj = new DateTime('2018-06-15', timezone_open('Indian/Mahe')); //设置时区 $offset = date_offset_get($dateTimeObj); print("\n"); print("时区偏移: ".$offset); ?>测试看看‹/›
输出结果:
时区偏移: 14400
在以下示例中,我们将打印各个时区的偏移量。-
<?php $dateTimeObj1 = new DateTime('2018-06-15', new DateTimeZone('Indian/Mahe')); print(date_offset_get($dateTimeObj1)); print("\n"); $dateTimeObj2 = new DateTime('2018-06-15', new DateTimeZone('Asia/Kolkata')); print(date_offset_get($dateTimeObj2)); print("\n"); $dateTimeObj3 = new DateTime('2018-06-15', new DateTimeZone('America/New_York')); print(date_offset_get($dateTimeObj3)); print("\n"); $dateTimeObj4 = new DateTime('2018-06-15', new DateTimeZone('Asia/Singapore')); print(date_offset_get($dateTimeObj4)); ?>测试看看‹/›
输出结果
14400 19800 -14400 28800
$dateSrc = '2007-04-19 12:50 GMT'; $dateTime = date_create( $dateSrc);; $retval = date_offset_get( $dateTime); echo "返回值为 $retval"; echo "<br>"; #使用第二种方法 $dateTime = new DateTime($dateSrc); $retval = $dateTime->getOffset(); echo "返回值为 $retval"; ?>测试看看‹/›
输出结果:
返回值为 0 返回值为 0