$eve['start']['dateTime'] = 2013-05-02T14:00:00+05:30;
$current_date = date("m-d-Y",strtotime($eve['start']['dateTime']));
$start_time = date("H:i A",strtotime($eve['start']['dateTime']));
当我使用上面的代码时,我将其作为05-02-2013 08:30 AM
但我应该05-02-2013 2:00 PM
为什么这个时间差异并且显示出错误的想法?
答案 0 :(得分:1)
时差没错。您在+0:00获得时区的正确日期和时间。要解决此问题,set your timezone。
答案 1 :(得分:0)
您的格式化程序似乎不正确,要获得所需的输出,请使用下面的代码。 H
用于24小时格式,前导零。 h
用于12小时格式。
date("h:i A");
答案 2 :(得分:0)
$eve['start']['dateTime'] = "2013-05-02T14:00:00+05:30"; // Missing quotes in your code?
$current_date = date("m-d-Y",strtotime($eve['start']['dateTime']));
应返回05-02-2013 08:30 AM
,因为您的服务器的时区为GMT + 0。如果您使用14:00
并减去5个半小时(从+0530到+0000),则应为08:30
。
要避免这种情况,您必须在服务器或脚本中set default timezone。