Отображение даты

Тема в разделе "NetCat", создана пользователем InoffLine, 21 ноя 2008.

Статус темы:
Закрыта.
  1. InoffLine

    InoffLine

    Регистр.:
    18 апр 2007
    Сообщения:
    573
    Симпатии:
    155
    Всем привет,
    возник вопрос, как отображать месяц написания новости словом, а не цифрой.
     
  2. sobolgay

    sobolgay Создатель

    Регистр.:
    30 мар 2008
    Сообщения:
    38
    Симпатии:
    5
    Как вывести вместо номера месяца его название на русском языке?

    Системные настройки шаблона:
    $month = array(
    1=>'января',2=>'февраля',3=>'марта',4=>'апреля',
    5=>'мая',6=>'июня',7=>'июля',8=>'августа',
    9=>'сентября',10=>'октября',11=>'ноября',12=>'декабря'
    );


    В шаблоне вместо $f_Date_month пишется:
    ".opt_case($month[intval($f_Date_month)], $month[intval($f_Date_month)], $f_Date_month)."


    Если требуется использовать в SQL-запросах, то:
    Архив по годам:".listQuery("SELECT DATE_FORMAT(Date,'%Y') AS year, DATE_FORMAT(Date,'%m') AS month FROM Message$classID WHERE Subdivision_ID=$sub AND Sub_Class_ID=$cc GROUP BY DATE_FORMAT(Date,'%Y'),DATE_FORMAT(Date,'%m') ORDER BY Date DESC","\".opt(\$mymonth = array(1=>'Январь',2=>'Февраль',3=>'Марта',4=>'Апрель',5=>'Май',6=>'Июнь',7=>'Июль',8=>'Августа', 9=>'Сентябрь',10=>'Октябрь',11=>'Ноябрь',12=>'Декабрь'),\"\").\" \".\$mymonth[intval(\$data[month])].\"")."
     
    InoffLine нравится это.
  3. programmer87

    programmer87 Создатель

    Регистр.:
    8 фев 2007
    Сообщения:
    23
    Симпатии:
    10
    Можно все сделать поуниверсальнее. Поместите функцию getday в /netcat/modules/default/function.inc.php

    Код:
    function getday ($ts) {
    	$d = array(
    		"Воскресенье",
    		"Понедельник",
    		"Вторник",
    		"Среда",
    		"Четверг",
    		"Пятница",
    		"Суббота"
    	);
    	return $d[intval(date("w",$ts))];
    }
    и в любом компоненте при наличии поле типа "дата" можно вывести день недели следующим вызовом функции:
    Код:
    ".getday(mktime(1,0,0,$f_Date_month,$f_Date_day,$f_Date_year))."
     
Статус темы:
Закрыта.