php代码没有正确地将gmt转换为ist

时间:2015-12-22 10:21:35

标签: php

这是一个非常小的问题,但我无法解决它

我希望通过php将gmt转换为ist,为此我有以下代码

$timestamp = strtotime('Tue, 17 Dec 2013 07:23:56 +0000');
date_default_timezone_set("Asia/Calcutta");
echo date('r', $timestamp);

代码工作正常,现在我有一个数组,通过它我已经获取了这种格式的时间

10-Dec-2015 10:45:02 +0000

我已存储在变量$ maildate

现在我把这个变量放在像这样的代码中

$timestamp = strtotime('$maildate');
date_default_timezone_set("Asia/Calcutta");
echo date('r', $timestamp);

我收到此日期和时间Thu, 01 Jan 1970 05:30:00 +0530

任何人都可以告诉我哪里出错了

2 个答案:

答案 0 :(得分:1)

您需要删除引号并从

更新代码
$timestamp = strtotime('$maildate');
                      ^^         ^^

$timestamp = strtotime($maildate);
                    //^^        ^^ Removed quotes

相反,您可以像{/ p>一样使用DateTime

$date = DateTime::createFromFormat('d-M-Y H:i:s P',$var);
$date->setTimeZone(new DateTimeZone('Asia/Kolkata'));
echo $date->format('r');

答案 1 :(得分:0)

看看这个

$timestamp = strtotime($maildate);
date_default_timezone_set("Asia/Calcutta");
echo date('r', $timestamp);