在PHP网站开发中,Mysql数据库设计中日期时间字段必不可少,由于Mysql日期函数输出的日期格式与PHP日期函数之间的日期格式兼容性不够,这就需要根据网站实际情况使用Mysql或PHP日期转换函数进行日期格式的转换。从开发便捷的角度来说,涉及到大量日期计算时使用UNIX时间戳格式进行日期计算或保存是非常好的开发习惯,UNIX时间戳有利于PHP与Msyq之间进行日期时间的格式转换,下面我就介绍一些常用的Mysql日期函数,以方便大家在PHP开发中进行日期转换。
Mysql日期格式函数DATE_FORMAT
与PHP日期函数date功能类似,在Mysql数据库中也有日期格式初始化函数DATE_FORMAT,主要用来将Mysql数据库的日期时间以用户需要的日期格式进行转换输出。只是日期格式代码不同。在Mysql数据库中日期默认显示格式为YYYY-MM-DD,如果需要显示其他日期格式,就需要使用Mysql日期函数DATE_FORMAT对日期进行格式化。Mysql日期函数DATE_FORMAT的格式化代码请参考Mysql官网日期函数DATE_FORMAT介绍。
在Mysql数据库中,Mysql日期函数DATE_FORMAT的常用方法
1
|
SELECT
DATE_FORMAT(date_col,"日期格式化字符串") FROM
tablename;
|
Mysql UNIX时间戳函数UNIX_TIMESTAMP/FROM_UNIXTIME
为什么需要介绍这两个Mysql UNIX时间戳函数呢?DATE_FORMAT函数只是Mysql日期格式化函数,当需要PHP日期函数与Mysql日期函数之间需要格式转化时,必须有一个沟通的桥梁,而UNIX时间戳格式的日期时间正好是两者之间的桥梁,Mysql UNIX时间戳函数UNIX_TIMESTAMP主要用来将当前时间或指定的日期时间值转换为UNIX时间戳格式,即
1
2 3 |
SELECT UNIX_TIMESTAMP();
或 SELECT UNIX_TIMESTAMP(‘2011-05-28 21:00:00‘); |
而FROM_UNIXTIME函数主要用来将指定的UNIX时间戳日期格式根据设置的日期时间格式字符串要求显示出来,即
1
|
FROM_UNIXTIME(unix_timestamp[,format])
|
format格式字符串的含义与Mysql日期函数DATE_FORMAT格式字符串一致。
Mysql数据库中使用UNIX时间戳日期格式的场合与好处
依据我的个人经验,当你进行PHP开发时,如果涉及到的前后台日期计算任务比较多,个人还是推荐在Mysql数据库设计时,日期时间格式还是使用UNIX时间戳格式,UNIX时间戳日期格式的好处是通用性强,便于不同格式的日期函数间相互转化,同时日期计算方面效率也更高。如果PHP开发中日期更多是用来显示的,那使用Mysql固有的日期显示格式YYYY-MM-DD显得更直观。当然在整个Mysql数据库设计中,日期时间字段的类型还是需要做到统筹规划,切勿格式不同,这会给网站开发和后期维护带来很大的麻烦。
至此,Mysql日期函数中关于日期时间格式转换函数的介绍就完了,对于PHP入门学习的朋友来说,只要灵活掌握Mysql日期函数DATE_FORMAT、UNIX_TIMESTAMP、FROM_UNIXTIME的基础知识,PHP网站开发中日期处理基本就没什么问题了。
注:PHP网站开发教程-leapsoul.cn版权所有,转载时请以链接形式注明原始出处及本声明,谢谢。