С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
 Аватар для useruser
166 / 90 / 38
Регистрация: 29.06.2015
Сообщений: 1,100

Как организовать работу со временем (временные зоны)?

26.07.2016, 14:15. Показов 1373. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как это делается? Какие есть решения?
Сейчас задача приблизительно в следующем - производить вычисления со временем и показывать пользователю результат, исходя из его временной зоны. Пользователи живут только в РФ.

Например:
Пользователь1 живет в Москве и гуляет в парке с 8 до 10.
Пользователь2 живет в Новосибирске и гуляет в парке с 10 до 14.
Каждый из них должен видеть гуляет ли кто то еще, во время его прогулки и когда это бывает. По местному времени.

Я уже запутался с UTC, GMT, кучей городов в РФ.
Пока вижу решение - предоставить пользователю список, как в windows (изменить часовой пояс UTC). Долго набивать (
На сервере, при любых вычислениях, все производить в UTC. А потом, на выдаче результата, прибавлять - вычитать UTC.

Это правильно?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.07.2016, 14:15
Ответы с готовыми решениями:

Временные зоны
Получил задание написать функцию, которая на вход принимает три строки: 1) Время 2) название временной зоны, в которой указано время ...

Временные зоны
Пишу в эту тему т.к. вопрос связанный с программированием (далее буду реализовывать нижеописанный алгоритм, скорее всего на PHP). ...

Временные зоны на php
У меня есть одна проблемка с написанием скрипта времени - время на сайте опаздывает на 3 часа от моего времени. Подскажите пожалуйста, что...

2
Диванный эксперт
Эксперт С++
 Аватар для Max Dark
2550 / 2064 / 971
Регистрация: 09.10.2013
Сообщений: 4,793
Записей в блоге: 4
26.07.2016, 15:35
Лучший ответ Сообщение было отмечено useruser как решение

Решение

PHP
1
2
3
4
5
6
7
8
9
10
11
// Список зон для России
$ru = timezone_identifiers_list(DateTimeZone::PER_COUNTRY, 'RU');
print_r($ru);
$tz_name = $ru[21]; // Москва
$utc = new DateTimeZone('UTC');
$tz = new DateTimeZone($tz_name);
// время UTC
$utc_now = new DateTime('now', $utc);
print_r($utc_now);
$offset = $tz->getOffset($utc_now);
print_r($offset);
Возможно пригодится...
0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
26.07.2016, 19:39
Правильно. Все вычисления нужно производить в UTC на сервере.

У кажадого пользователя есть часовой пояс, который он задает. Например (UTC +2). Это значит что для пользователя сейчас на 2 часа больше чем в UTC. Ясно, что чтобы перевести в UTC нужно от времени пользователя отнять 2 часа.

То есть:
1. Получаете данные пользователей (часовой пояс и время прогулки).
2. Переводите все в UTC (согласно смещению часового пояса), производите вычисления.
3. Переводите обратно в часовые пояса пользователей и показываете им результат.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.07.2016, 19:39
Помогаю со студенческими работами здесь

PHP и временные зоны
Такая проблема: хочу наладить показ времени на сайте независимо от местоположения пользователя. Чтобы в Киеве было +2, в Москве +3 и т.д. ...

Временные зоны на сайте
Добрый день. Недавно сообразил, что записываю время в БД, без учёта временных зон. Теперь думаю как же это исправить. Пользователь...

Временные зоны mysql+php
дата в бд хранится в виде timestamp SELECT NOW() возвращает 2013-10-30 14:39:07 date('Y-m-d H:i:s') 2013-10-30 10:39:07 а на моих...

Дата, время, временные зоны и методы борьбы
Озаботился временем и понял что все очень запущено. У пользователя своя временная зона, у php своя, а MySql третья. Как это все свести к...

Как организовать работу?
помогите пожалуста как реализовать такое приложение на Visual C++ Оценка экспорта фирмы(используя класы фирма покупатель продовец...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru