Корректировка времени сервера
Если, предаставленный хостером, сервер находится в другой временной зоне, что бывает по ряду причин, и не будем тыкать пальцем, но все знают почему не интересно иметь сервер в своей же стране. В этом случае, при работе со временем могут проявляться... так скажем, странные эффекты к примеру при добавлении времени в базу MySQL, пользователь только отправил сообщение, как оно стало доступным, но почему-то 10 часов назад... этакий привет из прошлого :О) Для корректировки времени на сервере, в случае использования PHP, можно вызвать
функцию strftime и добавить или вычесть несколько часов, итак, простой пример:
Для него нам понадобится получить текущую дату на сервере, используя функцию date:

                        
<?
$NewServerDate = date('Y-m-d-G');
/* про функцию date - ссылка на подробно чуть выше
да-да, я знаю что постоянно делаю везде ссылки на подробнее,
и все о них знают, но на всякий случай напоминаю */
Далее вызываем текущее время и отнимаем 10 часов, используя функции преобразования строк во время:
$NewServerDate = strftime("%Y-%m-%d-%H",
???strtotime("$NewServerDate -10 hours"));
Стоит отметить, что функция strtotime, сама переведет число (текущий день) на вчера, в случае необходимости. Также добавлю, что при желании можно и добавить 10 часов:
$NewServerDate = strftime("%Y-%m-%d-%H",
???strtotime("$NewServerDate +10 hours"));
?>
0 13 0
0

Нет фото
• 22 мар 2015, 17:04


У меня оно теже не работает.
Ошибка: Parse error: syntax error, unexpected '?'

0

Нет фото
Chainsaw * [мошенник]
• 28 янв 2015, 20:13


А что смешного? Может я мнение людей хочу услышать? За кривоту ваших рук я не отвечаю. Почему-то у меня работает этот код.

0

Нет фото
Ulitka * 2.74
• 28 янв 2015, 20:08


Я угораю с тебя. Сам добавил и спрашивает! Не работает эта хрень в данном виде.

0

Нет фото
Chainsaw * [мошенник]
• 27 дек 2014, 15:01


Кто тестил? *