Posição do Parâmetro | Tipo | Requerido | Padrão | Descrição |
---|---|---|---|---|
1 | string | Não | %b %e, %Y | Este é o formato para a data mostrada. |
2 | string | Não | n/a | Esta é a data padrão se a entrada estiver vazia. |
Isto formata a data e hora no formato strftime() indicado. Datas podem ser passadas para o Smarty como timestamps unix, timestamps mysql, ou qualquer string composta de mês dia ano(interpretavel por strtotime). Designers podem então usar date_format para ter um controle completo da formatação da data. Se a data passada para date_format estiver vazia e um segundo parâmetro for passado, este será usado como a data para formatar.
Example 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"} MOSTRA: Feb 6, 2001 Tuesday, February 6, 2001 14:33:00 Feb 5, 2001 Monday, February 5, 2001 14:33:00
Example 5.9. date_format conversion specifiers
%a - nome do dia da semana abreviado de acordo com o local atual %A - nome do dia da semana inteiro de acordo com o local atual %b - nome do mês abreviado de acordo com o local atual %B - nome do mês inteiro de acordo com o local atual %c - representação preferencial de data e hora para o local atual %C - ano com dois dígitos (o ano dividido por 100 e truncado para um inteiro, intervalo de 00 a 99) %d - dia do mês como um número decimal (intervalo de 00 a 31) %D - o mesmo que %m/%d/%y %e - dia do mês como um número decimal, um único dígito é precedido por um espaço (intervalo de 1 a 31) %g - ano baseado na semana, sem o século [00,99] %G - ano baseado na semana, incluindo o século [0000,9999] %h - o mesmo que %b %H - hora como um número decimal usando um relógio de 24 horas (intervalo de 00 a 23) %I - hora como um número decimal usando um relógio de 12 horas (intervalo de 01 a 12) %j - dia do ano como um número decimal (intervalo de 001 a 366) %k - hora (relógio de 24 horas) digítos únicos são precedidos por um espaço em branco (intervalo de 0 a 23) %l - hora como um número decimal usando um relógio de 12 horas, digítos unicos são precedidos por um espaço em branco (intervalo de 1 a 12) %m - mês como número decimal (intervalo de 01 a 12) %M - minuto como um número decimal %n - caractere de nova linha %p - ou `am' ou `pm' de acordo com o valor de hora dado, ou as strings correspondentes ao local atual %r - hora na notação a.m. e p.m. %R - hora na notação de 24 horas %S - segundo como número decimal %t - caractere tab %T - hora atual, igual a %H:%M:%S %u - dia da semana como um número decimal [1,7], com 1 representando segunda-feira %U - número da semana do ano atual como um número decimal, começando com o primeiro domingo como primeiro dia da primeira semana %V - número da semana do ano atual como um número decimal de acordo com The ISO 8601:1988, intervalo de 01 a 53, aonde a semana 1 é a primeira semana que tenha pelo menos quatro dias no ano atual, sendo domingo o primeiro dia da semana. %w - dia da semana como decimal, domingo sendo 0 %W - número da semana do ano atual como número decimal, começando com a primeira segunda como primeiro dia da primeira semana %x - representação preferencial da data para o local atualsem a hora %X - representação preferencial da hora para o local atual sem a data %y - ano como número decimal sem o século (intervalo de 00 a 99) %Y - ano como número decimal incluindo o século %Z - zona horária ou nome ou abreviação %% - um caractere `%' NOTA PARA PROGRAMADORES: date_format é essencialmente um wrapper para a função strftime() do PHP. Você deverá ter mais ou menos especificadores de conversão disponíveis de acordo com a função strftime() do sistema operacional aonde o PHP foi compilado. De uma olhada na página de manual do seu sistema para uma lista completa dos especificadores válidos.