在编写php代码的过程中,有时需要将数字转换为日期。例如,数据库中存储的是一个日期字段的数字表示方式,我们需要在网页上将其显示为人类可读的日期格式。以下是介绍如何在php中完成数字转换成日期的方法。
通常,数字表示的日期格式是Unix时间戳,即从1970年1月1日起的秒数。例如,数字1468531200表示以GMT时区为基准的2016年7月15日的午夜。在PHP中,有多种方式将Unix时间戳转换为日期格式,下面将介绍其中两种方法。
方法一:使用date()函数
date()函数是PHP内置的函数,用于格式化一个本地日期/时间。它有两个参数,第一个参数是格式化字符串,用于指定想要获得的日期/时间的格式。第二个参数是一个可选的时间戳,用于指定要格式化的日期/时间。如果没有提供第二个参数,则默认使用当前的本地时间。下面是一个实例:
$num = 1468531200; $format = "Y-m-d H:i:s"; $date = date($format, $num); echo $date;
说明:
立即学习“PHP免费学习笔记(深入)”;
- $num:表示要转换的数字,即Unix时间戳。
- $format:表示最终要得到的日期格式。上例中,$format为"Y-m-d H:i:s",即年-月-日 时:分:秒的格式。
- $date:用于存储转换后的日期值。
- echo $date:将转换后的日期值输出到页面上。
该实例中,输出结果为"2016-07-15 00:00:00",即将数字1468531200转换成了日期格式。
方法二:使用DateTime类
v1.13更新:1.增加产品讨论功能(ProductMsg备注字段)2.修正页面中的js错误数处。3.删除后的拍卖产品在回收站中统一管理。4.版面图标的DIY..自己更换,表格颜色自由调配。5.无限分类结构优化。6.产品说明支持HTML.7.网页界面优化.8.修正产品上下跳转的条数错误。9.完善邮件群发功能,可选择发送给不同类型的商城用户。10.修正拍卖信息中错误的交易完成Bug。11.去掉搜索用
DateTime是PHP提供的一个核心类,可以方便地进行日期/时间操作。要将Unix时间戳转换为日期格式,我们可以通过实例化DateTime类来完成。以下是一个实例:
$num = 1468531200;
$datetime = new DateTime("@$num");
$format = "Y-m-d H:i:s";
$date = $datetime->format($format);
echo $date;说明:
立即学习“PHP免费学习笔记(深入)”;
- $num:表示要转换的数字,即Unix时间戳。
- new DateTime("@$num"):使用DateTime类的构造函数进行实例化,将Unix时间戳传入其中。这里使用"@"符号可以方便地将Unix时间戳转换为规范的日期格式,否则需要手动进行格式转换。
- $format:表示最终要得到的日期格式。上例中,$format为"Y-m-d H:i:s",即年-月-日 时:分:秒的格式。
- $date:用于存储转换后的日期值。
- echo $date:将转换后的日期值输出到页面上。
该实例中,输出结果同样为"2016-07-15 00:00:00",即将数字1468531200转换成了日期格式。
综上所述,以上两种方法都可以将数字转换为日期。同时需要注意的是,在进行日期/时间操作时,尽量使用标准的时间格式,以避免出现由时区和其他非标准格式引起的不必要麻烦。










