Управляем датой и временем

Дата и время часто выводятся нами в новостях, комментариях или постах в форумах. Но я столкнулся с такой проблемой. У меня на предприятии заявки на неисправности разработанных мной сайтов приходят регулярно, для этого у заказчиков есть специальный интерфейс. Так вот там дата и время заявки стали сильно врать, а именно врать они стали после отмены перевода на летнее время. Именно поэтому я озадачился решением данной задачи и вот что у нас есть на выходе.

Первое куда естественно стоит посмотреть - это на временной пояс, который установлен по умолчанию. Делается это просто:

if (date_default_timezone_get()) {
    echo 'Дефолтная временная зона: ' . date_default_timezone_get() . '
'; } if (ini_get('date.timezone')) { echo 'date.timezone: ' . ini_get('date.timezone'); } //Получим следующее сообщение /* Дефолтная временная зона: Материк/Город date.timezone: Материк/Город */

date.timezone задается в файле php.ini сервера, и к сожалению он не всегда доступен для правки. Поэтому выход из ситуации, когда вас не устраивает выдаваемое скриптом время это поменять дефолтную зону насильно в самом скрипте (желательно прописать такую фукнцию в начале файла), задав ее функцией date_default_timezone_set (). Данная функция влияет на дату и время, которые выводит данный скрипт и все подключаемые к нему скрипты.

date_default_timezone_set('Asia/Magadan');
echo date("D-m-Y H:i:s");

Для того, чтобы узнать правильное написание своего временного пояса воспользуйтесь справкой сайта php.ru.

Другой интересной фишкой является вывод локализованной даты и времени. Не всем нравится например то, что на его сайте выводится дата в формате 12 january 2012, мы же живем в России и хочется чтобы выводилось 12 января 2012. Делается это просто. В файле, в котором вы подключаетесь к базе данных, после подключения дописываем следующее:

mysql_query("SET lc_time_names = 'ru_RU'") ;

Теперь при формировании SQL запроса достаточно сделать следующее:

$sql = "SELECT ID, VALUE1, VALUE2, VALUE3, DATE_FORMAT(date, '%d %M %Y %H:%i') as DATE, VALUE4 FROM $table";
$result = mysql_query($sql);
$myrow = mysql_fetch_array($result);

Таким образом при выводе в последствии в шаблоне вашей даты из массива c помощью $myrow["DATE"] вы получите локализованную версию времени и даты. Маску вывода вы можете менять по своему усмотрению.


Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/3SgXTy4FkJQ/lessons.php

Читать комменты и комментировать

Добавить комментарий / отзыв



Защитный код
Обновить

Управляем датой и временем | | 2012-06-19 11:59:57 | | Статьи Web-мастеру | | Дата и время часто выводятся нами в новостях, комментариях или постах в форумах. Но я столкнулся с такой проблемой. У меня на предприятии заявки на неисправности разработанных мной сайтов приходят | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: