- 1
- 2
$lastBuildDate=date(DATE_FORMAT_RFC822);
$lastBuildDated = str_replace ( '+0400' , '+0300' , $lastBuildDate );
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+172
$lastBuildDate=date(DATE_FORMAT_RFC822);
$lastBuildDated = str_replace ( '+0400' , '+0300' , $lastBuildDate );
Шах и мат серверным настройкам timezone
А для Мистера Мускула табличку поясов нужно генерировать самому с помощью штатной утилиты.
И даже после всего этого может оказаться, что какая-нибудь гадкая программа на сервере статически слинкована с устаревшей библиотекой ICU, поэтому без костылей никак...
«Штатные» функции преобразования времени — зло. Даёшь велосипеды!
Если у клиента неправильное UTC - ССЗБ, пусть настраивает. Можно даже ему об этом намекнуть в каком-нибудь всплывающем сообщении.
-- У вас программа не работает!
-- Что не работает?
-- Не знаю, всё не работает!
-- Да что конкретно то?
-- Не знаю. Ничего. Пока все работает. Но вы все сломали!!!!!!
Реальный диалог, между прочим)
Так что полагаться на то, что у клиента установлено вменяемое время (я уже не говорю о том, что точное), не сто́ит.
*****
Ну и нельзя забывать, что далеко не все следят за обновлением таблицы часовых поясов в ОС, так что даже если часики выставлены правильно, в UTC может быть что угодно.
Кстати, все знают, как в Андроиде обновить эту таблицу, если патч для прошивки не вышел? Про tzdata вспомнили? А про ICU?
ПС. А если клиент из Альфа-Центавры, то что время на 50 лет переводить туда-обратно?
Кстати, меня раздражает относительное время в современных дизайнах. Лично мне проще пользоваться абсолютным. Особенно нелепо относительное время выглядит на кешированной веб-странице.
А ещё раздражает Инстаграм своим «это было 71 неделю назад». 71 неделя — это сколько в нормальных единицах измерения? Это вообще зимой или летом было?
P.S. Пусть сюда зайдут веб-дизайнеры и пусть им будет стыдно.
Мне кажется, хорошо бы абсолютное + относительное в скобках.
А для ГК - абсолютное, относительное и относительное относительно рожительского комментария.
Ответил Петя, 01.01.2015 (5 месяцев назад; через 40 секунд)