Как перевести время по Гринвичу в IST?

Здесь я получаю время по Гринвичу следующим образом.

1520489880

Теперь я получаю это как

$myfinaldate = gmdate("d M H:i", $strtoDate);

Так оно мне вернёт GMT time, Теперь я хочу довести это до IST (индийское стандартное время).

где я застрял, когда я пытаюсь

//Set timezone to india
date_default_timezone_set('Asia/Kolkata');
echo date('Y-m-d H:i:s');

Но это возвращает мне текущее время, а не время, когда я вхожу strtotime

0

Решение

Вам необходимо передать отметку времени:

date_default_timezone_set('Asia/Kolkata');
echo date('d M H:i', $strToDate); // where $strToDate is 1520489880

Будет производить следующее значение:

08 Mar 11:48
0

Другие решения

Вы можете конвертировать время по Гринвичу в время IST, используя следующие способы:

1.

echo date('Y-m-d H:i:s',strtotime('+330 minutes', 0));

2.

date_default_timezone_set('Asia/Kolkata');
echo date('Y-m-d H:i:s');
0

Изменение часового пояса по умолчанию не очень хорошая идея. использование DateTime класс, любой вам больше не нужно беспокоиться о часовом поясе по умолчанию …

$dt = new DateTime("@$strToDate");
$dt->setTimezone(new DateTimezone('Asia/Kolkata'));
echo $dt->format('Y-m-d H:i:s');

демонстрация

0
По вопросам рекламы [email protected]