PHP ISO 8601格式转换问题

时间:2016-05-30 08:42:01

标签: php datetime iso8601

我想将此字符串'2016-05-30 15:35:00'转换为 ISO 8601 格式,该格式应如下所示:

  

预期结果: 2016-05-30T15:35:00 + 05:30

我试过跟随,但在输出中它少了2个小时,

$phpdate = strtotime('2016-05-30 15:35:00');

echo gmdate('Y-m-d\TH:i:s\+05:30', $phpdate);
  

输出: 2016-05-30T13:35:00 + 05:30

我在某处犯了错误吗?或者有更简单的转换方法吗?

2 个答案:

答案 0 :(得分:1)

为了更轻松地处理日期,我建议Carbon

你的问题是:

strftime

答案 1 :(得分:1)

您正在使用PHP的gmdate函数将日期转换为UTC格式,而您需要使用date函数,如

date_default_timezone_set("Asia/Kolkata");//Set your timezone to Asia/Kolkata

$phpdate = strtotime('2016-05-30 15:35:00');

echo date('c', $phpdate);// 2016-05-30T13:35:00+05:30 if your timezone is of Asia/Kolkata