首页 理论教育PHPMVC开发实战:处理日期数据的Date扩展类

PHPMVC开发实战:处理日期数据的Date扩展类

【摘要】:在网站开发中处理时间日期数据是比较烦琐的工作,例如计划日期时差、日期转星期、指定日期倒计时等。系统内置了Date扩展类,能够让日期数据处理变得快捷、简单。上述代码运行结果为“1.4246575342466”,即1.4年。其中参数time表示与构造函数日期比较的日期数据;参数precision表示结果精度。

在网站开发中处理时间日期数据是比较烦琐的工作,例如计划日期时差、日期转星期、指定日期倒计时等。系统内置了Date扩展类,能够让日期数据处理变得快捷、简单。接下来将介绍Date类常用的方法。

1.dateDiff(比较日期跨度)

dateDiff成员方法用于比较两个日期数据间隔的时间。返回的结果以“年”、“月”、“日”、“时”、“分”、“秒”作为计算结果。dateDiff方法形式如下。

其中参数date表示与构造函数日期比较的日期数据;参数elaps表示比较跨度。elaps支持6个参数值,用于返回结果值的计算单位,分别为y(年)、M(月)、w(星期)、h(小时)、m(分钟)、s(秒)。dateDiff方法在运算时与构造函数参数进行比较,如以下代码所示。

上述代码运行结果为“1.4246575342466”,即1.4年。

2.timeDiff(以中文显示日期跨度)

timeDiff方法与dateDiff类似,不同的是timeDiff并非以浮点数值为返回结果,而是返回友好的中文格式。timeDiff方法形式如下。

其中参数time表示与构造函数日期比较的日期数据;参数precision表示结果精度。precision参数值与前面介绍的elaps参数值一样。timeDiff的使用如以下代码所示。

上述代码运行结果为“1年前”。使用timeDiff方法,可以方便地模拟微博、日志之类的日期显示应用。

3.yearToCh(年份转中文)

一些中文应用通常需要将数字转换为中文字符串。yearToCh方法能够将常见的数字年份转换为中文格式的年份,并且支持公元元年的转换。yearToCh方法形式如下。(www.chuimin.cn)

其中参数yearStr表示与构造函数日期比较的日期数据;参数flag表示是否显示公元元年。yearToCh方法的使用如以下代码所示。

上述代码运行结果为“公元二零一二”。yearToCh方法不仅可以转换年份,还可以对普通的数字进行转换。

4.magicInfo(计算生肖

magicInfo方法用于运算构造函数指定日期所属的生肖、星座等信息。magicInfo方法形式如下。

其中参数type表示返回的结果类型,共支持3种类型,分别如下:

➢XZ:返回星座。

➢GZ:返回干支,即甲、乙、丙、丁、戊、己、庚、辛、壬、癸、子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之间的数值。

➢SX:返回十二生肖。

magicInfo方法的使用如以下代码所示。

上述代码返回结果为“双子座”。读者可以尝试更改type参数值,观察magicInfo运算结果,如果需要多语言,可参考第9章9.3.3节实现。