Форматируем дату, полученную из БД

Я делаю свою CMS и в модуле новостей возникла необходимость преобразовать формат даты, которую возвращает MySQL в более менее приличный вид

Код функции довольно простой и при желании его легко изменить для своих нужд. Данная функция позволяет выводит дату в формате ДЕНЬ_НЕДЕЛИ, ЧИСЛО МЕСЯЦ ГОД, например Пятница, 27 января 2006 года.

function format_date_html($mysql_date,$case)
{

 $array=explode('-',$mysql_date); //Разбиваем MySQL дату на массив
 
 //Создаем русские названия месяцев для последующей замены
 $month['01']='января';
 $month['02']='февраля';
 $month['03']='марта';
 $month['04']='апреля';
 $month['05']='мая';
 $month['06']='июня';
 $month['07']='июля';
 $month['08']='августа';
 $month['09']='сентября';
 $month['10']='октября';
 $month['11']='ноября';
 $month['12']='декабря';
 
 if($array[2]<10) //Если день месяца меньше десяти, то убераем ноль перед числом
 {
  $array[2]=str_replace(0,'',$array[2]);
 }
 
 $day=date('D',mktime(0,0,0,$array[1],$array[2],$array[0])); //Получаем день недели для данной даты
 
 if($case==2) //Если $case=2, то используем дни недели в винительном падеже
 {
  $weekday['Mon']='понедельник';
  $weekday['Tue']='вторник';
  $weekday['Wed']='среду';
  $weekday['Thu']='четверг';
  $weekday['Fri']='пятницу';
  $weekday['Sat']='субботу';
  $weekday['Sun']='воскресенье';
 }
 else //А если нет, то в именительном
 {
  $weekday['Mon']='Понедельник';
  $weekday['Tue']='Вторник';
  $weekday['Wed']='Среда';
  $weekday['Thu']='Четверг';
  $weekday['Fri']='Пятница';
  $weekday['Sat']='Суббота';
  $weekday['Sun']='Воскресенье';
 }

//Возвращаем отформатированную дату
return $weekday[$day] . ', ' . $array[2] . ' ' . $month[$array[1]] . ' ' . $array[0] . ' года';
}


Удачи!




Рекомендуем почитать

 

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


Ваше имя:


Комментарий:


Введите: Картинка