可以将时间戳格式化成想要的时间文本 将日期和时间格式化成`strftime()`的格式。 时间可以是unix的 时间戳, DateTime 对象, mysql时间戳,或者月日年格式的字符串,与PHP函数`strtotime()`类似。 模板设计者可以对date_format的格式有完全的控制。 如果传递到date_format的时间为空, 而第二个参数传递了值,那么第二个参数将作为需要格式化的时间。 <table> <colgroup> <col> <col> <col> <col> <col> </colgroup> <thead><tr> <th>参数顺序</th> <th>类型</th> <th>必选参数</th> <th>默认值</th> <th>说明</th> </tr></thead> <tbody> <tr> <td>1</td> <td>string</td> <td>No</td> <td>%b %e, %Y</td> <td>输出时间的格式定义</td> </tr> <tr> <td>2</td> <td>string</td> <td>No</td> <td>n/a</td> <td>如果输入为空,则作为默认时间。</td> </tr> </tbody> </table> time:`1543377152` ``` _{$time|date_format:"%Y-%m-%d %H:%M"}_ ``` 输出:`2018-11-28 11:52` ***** 格式说明: date_format支持格式: %a - 当前区域星期几的简写 %A - 当前区域星期几的全称 %b - 当前区域月份的简写 %B - 当前区域月份的全称 %c - 当前区域首选的日期时间表达 %C - 世纪值(年份除以 100 后取整,范围从 00 到 99) %d - 月份中的第几天,十进制数字(范围从 01 到 31) %D - 和 %m/%d/%y 一样 %e - 月份中的第几天,十进制数字,一位的数字前会加上一个空格(范围从 ' 1' 到 '31') %g - 和 %G 一样,但是没有世纪 %G - 4 位数的年份 %h - 和 %b 一样 %H - 24 小时制的十进制小时数(范围从 00 到 23) %I - 12 小时制的十进制小时数(范围从 00 到 12) %j - 年份中的第几天,十进制数(范围从 001 到 366) %k - 小时,24 小时格式,没有前导零 %l - 小时,12 小时格式,没有前导零 %m - 十进制月份(范围从 01 到 12) %M - 十进制分钟数 %n - 换行符 %p - 根据给定的时间值为 `am' 或 `pm',或者当前区域设置中的相应字符串 %r - 用 a.m. 和 p.m. 符号的时间 %R - 24 小时符号的时间 %S - 十进制秒数 %t - 制表符 %T - 当前时间,和 %H:%M:%S 一样 %u - 星期几的十进制数表达 [1,7],1 表示星期一 %U - 本年的第几周,从第一周的第一个星期天作为第一天开始 %V - 本年第几周的 ISO 8601:1988 格式,范围从 01 到 53,第 1 周是本年第一个至少还有 4 天的星期,星期一作为每周的第一天。(用 %G 或者 %g 作为指定时间戳相应周数的年份组成。) %w - 星期中的第几天,星期天为 0 %W - 本年的第几周数,从第一周的第一个星期一作为第一天开始 %x - 当前区域首选的时间表示法,不包括时间 %X - 当前区域首选的时间表示法,不包括日期 %y - 没有世纪数的十进制年份(范围从 00 到 99) %Y - 包括世纪数的十进制年份 %Z - 时区名或缩写 %% - 文字上的 `%' 字符