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.
Note
En el Smarty 1.4.0, usted puede parsar fechas al Smarty como timestamps unix,mysql, o cualquier otra fecha interpretable por strtotime().
Example 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.
Example 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(0, 0, 0, $month, $day, $year);
}
?>
Vea también {html_select_date}, {html_select_time}, date_format y $smarty.now,
