如何使用gmdate方法更改我的时区?PHP


How to change my timezone with gmdate method? PHP

我想将时区更改为GMT+3。但是我不知道怎么做。顺便说一句,我不想改变gmdate的方法。谢谢。

    $meetingstamp = strtotime($meeting_date . " UTC");   
    $dtstart= gmdate("Ymd'THis'Z",$meetingstamp);
    $dtend= gmdate("Ymd'THis'Z",$meetingstamp+$meeting_duration);
    $todaystamp = gmdate("Ymd'THis'Z");

时区不能用gmdate或date更改,这些函数仅用于格式化时间戳(gmdate()将始终创建GMT日期时间,而date()则将考虑时区设置)。

您可以使用"date_default_timezone_set()"函数设置时区。

使用"strtotime"将日期时间转换为UNIX时间戳(如果字符串不包含时区信息,它将使用PHP时区设置!)

示例:

$dateString = '2016-07-22 12:00:00 GMT+3'; 
$timestamp = strtotime($dateString);
date_default_timezone_set('America/Los_Angeles'); // GMT -7
$newDateString = date('Y-m-d H:i:s', $timestamp);
echo $newDateString;

将输出"2016-07-22 02:00:00"。

答案:

$meetingstamp = strtotime($meeting_date); 
$dtstart = gmdate("Ymd'THis'Z", $meetingstamp);
$dtend = gmdate("Ymd'THis'Z", $meetingstamp+$meeting_duration);
$todaystamp = gmdate("Ymd'THis'Z",strtotime("+3 hours"));