date_format

Позиция параметра Тип Обязателен По умолчанию Описание
1 строка (string) Нет %b %e, %Y Формат вывода даты.
2 строка (string) Нет n/a Если модифицируемое значение пусто, то используется это.

Формирует дату и время по заданному формату strftime(). Даты могут быть в виде unix timestamps, mysql timestamps или в любом другом виде, который поймет strtotime(). Проектировщики шаблонов могут использовать date_format для контроля над форматом выводимых дат. Если дата, переданная модификатору, пуста, то второй параметр используется как дата.

Пример 5-8. date_format

index.php:

$smarty = new Smarty;
$smarty->assign('yesterday', strtotime('-1 day'));
$smarty->display('index.tpl');

index.tpl:


{$smarty.now|date_format}
{$smarty.now|date_format:"%A, %B %e, %Y"}
{$smarty.now|date_format:"%H:%M:%S"}
{$yesterday|date_format}
{$yesterday|date_format:"%A, %B %e, %Y"}
{$yesterday|date_format:"%H:%M:%S"}

OUTPUT:

Feb 6, 2001
Tuesday, February 6, 2001
14:33:00
Feb 5, 2001
Monday, February 5, 2001
14:33:00

Пример 5-9. date_format conversion specifiers

%a - сокращенное название дня недели, в зависимости от текущей локали

%A - полное название дня недели, в зависимости от текущей локали

%b - сокращенное нащвание месяца, в зависимости от текущей локали

%B - полное название месяца, в зависимости от текущей локали

%c - формат даты и времени по умолчанию для текущей локали

%C - номер века (год, деленный на 100, представленный в виде целого в промежутке от 00 до 99) 

%d - день месяца в десятичном формате (от 00 до 31) 

%D - синоним %m/%d/%y 

%e - день месяца в десятичном формате без ведущего нуля (от 1 до 31) 

%g - Week-based year within century [00,99]

%G - Week-based year, including the century [0000,9999]

%h - синоним %b 

%H - часы по 24-часовым часам (от 00 до 23) 

%I - часы по 12-часовым часам (от 01 до 12) 

%j - день года (от 001 до 366) 

%k - часы по 24-часовым часам без ведущего нуля (от 0 до 23)

%l - часы по 12-часовым часам без ведущего нуля (от 1 до 12)

%m - номер месяца (от 01 до 12) 

%M - минуты

%n - символ новой строки

%p - `am' или `pm', в зависимости от заданного формата времени и текущей локали.

%r - time in a.m. and p.m. notation 

%R - time in 24 hour notation 

%S - секунды

%t - символ табуляции

%T - время в формате %H:%M:%S 

%u - номер дня недели [1,7], где 1-ый день - понедельник

%U - номер недели в году, считая первое воскресенья года первым днем первой недели 

%V - номер недели в году (по ISO 8601:1988) в диапазоне от 01 до 53, где первая неделя
	 та, у которой хотя бы 4 дня находяться в данном году. Понедельник считается 
	 первым днем недели. 

%w - номер дня недели, где 0 - воскресенье

%W - номер недели в году, считаю первый понедельник первым днем первой недели.

%x - preferred date representation for the current locale without the time 

%X - preferred time representation for the current locale without the date 

%y - year as a decimal number without a century (range 00 to 99) 

%Y - year as a decimal number including the century 

%Z - time zone or name or abbreviation 

%% - a literal `%' character 


PROGRAMMERS ЗАМЕЧАНИЕ: date_format is essentially a wrapper to PHP's strftime()
function. You may have more or less conversion specifiers available depending
on your system's strftime() function where PHP was compiled. Check your
system's manpage for a full list of valid specifiers.