Fechas

Como una regla basica, siempre pase fechas al Smarty como timestamps. Esto permite al diseñador de template utilizar date_format para el control completo sobre el formato de fechas, y también facilita la comparación de fechas si es necesario.

Nota: En el Smarty 1.4.0, usted puede parsar fechas al Smarty como timestamps unix,mysql, o cualquier otra fecha interpretable por strtotime().

Ejemplo 18-4. Usando date_format

{$startDate|date_format}

Esta es la salida:

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

Esta es la Salida:

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

Cuando usa {html_select_date} en un template, el programador normalmente va a querer convertir la salida de un formulario de vuelta al formato timestamp. Aquí esta una función para ayudar con esto.

Ejemplo 18-5. Convirtiendo elementos en forma de fecha de vuelta a un timestamp

<?php
// esto asume que la forma de sus elementos son nombradas como
// 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);
}
?>

Vea también {html_select_date}, {html_select_time}, date_format y $smarty.now,