使用smarty打印mysql日期

时间:2012-08-04 14:29:25

标签: php mysql date smarty

我使用此方法2012-08-02 02:20:05将日期放在mysql数据库中。现在,如何使用smarty在我的页面中打印。

mycode :(注意:send_date是行的名称)

$sql = "SELECT m.*, s.photo, s.gender
       FROM mail AS m, signup AS s
       WHERE m.receiver = '" .mysql_real_escape_string($username). "'
       AND m.sender = s.username AND inbox = '1' AND status = '1'
       ORDER BY send_date DESC LIMIT " .$limit;
$rs  = $conn->execute($sql);

2 个答案:

答案 0 :(得分:2)

要将日期从2012-08-02 02:20:05转换为unix纪元(自1970年以来的秒数),您需要使用strtotime()。要将纪元格式化为您想要使用date()strtotime()的任何人类可读日期。

Smarty知道date_format modifier。从Smarty3开始,这只小狗几乎接受任何代表日期的东西(包括2012-08-02 02:20:05)。在Smarty2中,你可能需要自己将字符串转换为epoch,例如{$ date | strtotime | date_forma:“%d。$ m。%Y”}。请注意,由于Smarty3 date_format接受来自strtotime和date的格式符号,而Smarty2仅支持strtotime表示法。

答案 1 :(得分:0)

如果你问如何在smarty中输出任何变量,请执行以下操作(假设你的smarty设置正确):

在PHP中:

/*
assign method: assigns variables to the template
first parameter: The variable name you want to use in your template file
second parameter: the parameter you want to pass to your template file
*/
$smarty->assign('variable', $variable);

聪明:

/*
brackets {} indicate that smarty is in play
$variable is the variable you passed to smarty
*/

{$variable}

如果这不是你想要的,请编辑你的问题以便更清楚。