Конвертировать UT C Datetime в MySQL База данных для клиентов Часовой пояс без каких-либо библиотек - PullRequest
0 голосов
/ 18 апреля 2020

в течение приблизительно 3 дней, сейчас я пытаюсь преобразовать UT C Datetime, например (2020-04-18 13:41:18) во время клиентов

Например, для меня это будет: 2020-04-18 15: 41: 18.

Выход: сб 18 апреля 2020 13:41:18 GMT + 0200 (Mitteleuropäische Sommerzeit)

Я получаю всегда неправильное время.

В базе данных я использую DateTime в качестве типа данных (MySQL) и сохраняю дату этого типа: 2020-04-18 13: 41: 18

Мой код здесь:


let unixtime = Date.parse("<?php echo $publish_date ?>") / 1000; 

let publish_date = new Date(unixtime * 1000).toString();

document.write(publish_date);

Что я делаю не так?

1 Ответ

1 голос
/ 18 апреля 2020

Это покажет ваше unix время и добавит или вычтет часовой пояс пользователя в минутах

Используется jkavascript sunction getTimezoneOffset

let unixtime = Date.parse("<?php echo $publish_date ?>") / 1000; 

let publish_date = new Date(unixtime * 1000).toString();

var newDateObj = new Date();
newDateObj.setTime(date1.getTime() + (publish_date.getTimezoneOffset() * 60 * 1000));

document.write(newDateObj);

Вы также можете используйте setTime для вашего опубликованного_даты, но я не знаю, нужно ли вам время где-нибудь еще

...