smarty template engine
Thursday, January 08, 2009  
download | documentation | faq | forum | mailing lists | changelog | contribs 


search for in the  


Date

Come regola generale, passate sempre le date a Smarty in forma di timestamp. Questo consente ai progettisti di usare date_format per un pieno controllo sulla formattazione delle date, e rende semplice anche il confronto fra date quando necessario.

Nota: A partire da Smarty 1.4.0, potete passare date a Smarty come timestamp unix, timestamp mysql, o qualsiasi altro formato leggibile da strtotime().

Esempio 18-4. uso di date_format

{$startDate|date_format}

Questo stamperà:

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

Questo stamperà:

2001/01/04
{if $date1 < $date2}
   ...
{/if}

Quando usate {html_select_date} in un template, il programmatore probabilmente vorrà convertire l'output del modulo in un formato timestamp. Ecco una funzione che può aiutarvi in questo.

Esempio 18-5. convertire le date provenienti da un modulo in timestamp

<?php

// stabiliamo che gli elementi del modulo si chiamino
// 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(000$month$day$year);
}
?>



 

credits 

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

All rights reserved.