sql+пхп достать с базы время и изменить его

я вставляю в базу время вот так

insert into table (time) values (now ())
,
а как мне достать время и увеличить его или уменьшить исходя из часового пояса

например я в украине дал команду серверу вставить в базу свое время — 20: 00. в росии на сервере сейчас 21: 00 и в базу идет время 21: 00
,
а теперь я в украине хочу достать с базы время 20: 00... тоесть нужно достать с базы время 21: 00 и отнять от него 1...

есть ли в скл такая ф-я... чтобы узнать часовой пояс (ну это может и пхп сделать), а потом достать с базы время и откоректировать его исходя из часового пояса...

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

(now ())
Есть такое UtcNow () — универсальное мировое время (я не спец по MySql, я по MS SQL Server, но 1000% должен быть аналог)

Используйте всегда UTC вместо локального времени

не сильно это безопасно передавать через джава скрипты вообще что-нибудь... там такую зону могут прислать!

как же я узнаю клиентское время если код пхп исполняется на сервере...

есть хаки выцепить оное через js

CONVERT_TZ

в «свежих» проектах предпочитаю хранить в базе зону, в формате timezone_identifiers_list и делать пересчет на стороне php

я извиняюсь... немного ступил...или много...
только дошло...
как же я узнаю клиентское время если код пхп исполняется на сервере...

извините что время отнял...

Не вказана БД. Думається що то Мускул.
Інфи в інеті достатньо.
Переводити часові пояси sql’ом можна:
SELECT CONVERT_TZ (’2006−01−01 13: 00: 00’, ’GMT’, ’MET’);
-> ’2006−01−01 14: 00: 00’
SELECT CONVERT_TZ (’2006−01−01 11: 00: 00’, ’+00: 00’, ’+10: 00’);

-> ’2006−01−01 21: 00: 00’

Підписатись на коментарі