我正在使用Live Connect创建日历活动。根据他们的文档,为事件指定的start_time应该表明距离UTC的时间有多少小时(即+0700或-0300)。作为第一次尝试,我有一些工作的代码,从PHP手册拼凑而成。然而,它“感觉”非常冗长。所以,从风格的角度来看,是否有办法清理我所拥有的更简洁的东西?请注意,$ time_zone是基于给定用户我知道的。
$dateTimeZone = new DateTimeZone($time_zone);
$dateTime= new DateTime("now", $dateTimeZone);
$gmt_offset = ($dateTime->getOffset())/3600;
$negative = ($gmt_offset<0);
$gmt_offset = abs($gmt_offset);
if ($gmt_offset < 10) {
$gmt_offset = '0'.$gmt_offset.'00';
} else {
$gmt_offset = $gmt_offset.'00';
}
if ($negative) {
$gmt_offset = '-'.$gmt_offset;
} else {
$gmt_offset = '+'.$gmt_offset;
}
感谢您的投入。
-Eric
答案 0 :(得分:2)
$gmt_offset = $dateTime->format('O');
格式字符:O
描述:与格林威治时间(GMT)的差异,以小时为单位 示例返回值:示例:+0200