Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2852|回复: 1
打印 上一主题 下一主题

Freemarker日期处理及日期格式转换使用方法

[复制链接]

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
跳转到指定楼层
楼主
发表于 2017-3-9 10:00:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. 把数字类型表示的日期,转换成datetime类型,字符串输出。
${item.time?number_to_datetime},默认的格式是“yyyy-MM-dd hh:mm:ss”。
在调用之前,可以手动设置datetime的格式,如: <#setting datetime_format="yyyy年MM月dd日"/>
2.把date类型表示的日期,转换成字符串格式,字符串输出。
${item.time?string("yyyy年MM月dd日")}

3.如果item.time为null,Freemarker会报错,比较烦人。
于是,我写了个通用的日期工具函数:
<#function number_to_ymdhms date>
<#if date != null>
   <#setting datetime_format="yyyy-MM-dd hh:mm:ss"/>
    <#return date?number_to_datetime/>
</#if>
<#return ""/>
</#function>

<#function date_to_ymdhms date>
<#if date != null>
    <#return date?string('yyyy-MM-dd hh:mm:ss')/>
</#if>
<#return ""/>
</#function>

引入方式:<#include "/user/common/function/date.ftl"/>
调用方式: ${number_to_ymdhms(item.addtime)}

好处是,日期处理统一到一个地方,格式统一。如果不需要统一的,就需要再写一个带格式的函数了。
null需要判断,防止报错:空异常。


回复

使用道具 举报

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
沙发
 楼主| 发表于 2017-9-13 17:56:28 | 只看该作者
My97日期控件 官方网站 datetimepicker calender dateselector  
http://www.my97.net/demo/index.htm
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-11-25 15:50 , Processed in 0.057242 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表