编辑这个页面须要登录或更高权限!

PHP date_offset_get() 函数用法及示例

PHP Date & Time 函数手册

date_offset_get()函数返回时区偏移量

定义和用法

date_offset_get()是DateTime::getOffset的别名。 此函数接受DateTime类的对象,并返回给定日期的时区偏移量。

语法

date_offset_get($object)

参数

序号参数及说明
1

object (必需)

这是一个DateTime对象,您需要为其提供时区偏移量。



返回值

date_offset_get()函数返回给定DateTime对象的时区偏移量。如果失败,此函数将返回布尔值false

PHP版本

此函数最初是在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