smarty template engine
Monday, December 01, 2008  
download | documentation | faq | forum | mailing lists | changelog | contribs 


search for in the  


Datas

Em geral, sempre envie datas ao Smarty no formato timestamp. Deste modo o desginer do template pode usar o modificador date_format para ter um controle total sobre a formatação da data, e também facilita a comparação de datas se necessário.

Nota: No Smarty 1.4.0, você pode enviar datas ao Smarty no formato unix timestamp, mysql timestamp, ou qualer outra data que possa ser lida pela função strtotime().

Exemplo 18-4. usando date_format

{$startDate|date_format}

Irá mostrar:

Jan 4, 2001
{$startDate|date_format:"%Y/%m/%d"}

Irá mostrar:

2001/01/04
{if $data1 < $data2}
   ...
{/if}

Quando se está usando {html_select_date} em um template, o programador normalmente vai querer converter a saída de um formulário de volta para o formato timestamp. Abaixo está uma função que irá ajudá-lo à fazer isto.

Exemplo 18-5. Convertendo datas de volta ao formato timestamp

<?php
// presume-se que os elementos de seu formulário são chamados de 
// startDate_Day, startDate_Month, startDate_Year

$startDate makeTimeStamp($startDate_Year,$startDate_Month,$startDate_Day);

function 
makeTimeStamp($year="",$month="",$day="")
{
    if(empty(
$year))
        
$year strftime("%Y");
    if(empty(
$month))
        
$month strftime("%m");
    if(empty(
$day))
        
$day strftime("%d");

    return 
mktime(0,0,0,$month,$day,$year);
}
?>



 

credits 

Smarty Copyright © 2002-2008
New Digital Group, Inc.

All rights reserved.