PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
发布:smiling 来源: PHP粉丝网 添加日期:2021-09-27 10:14:15 浏览: 评论:0
这篇文章主要介绍了PHP基于DateTime类解决Unix时间戳与日期互转问题,通过DateTime类解决1970年前及2038年后时间戳显示与计算问题,非常简单实用,代码中备有较为详尽的注释便于理解,需要的朋友可以参考下。
本文实例讲述了PHP基于DateTime类解决Unix时间戳与日期互转问题,分享给大家供大家参考,具体如下:
这个问题主要在32位的系统下出现,64位的不存在这样的问题。php 5.2+提供了DateTime类来处理这样的问题,参考方案如下(请注意时区的处理):
- //1、Unix时间戳转日期
- function unixtime_to_date($unixtime, $timezone = 'PRC') {
- $datetime = new DateTime("@$unixtime"); //DateTime类的bug,加入@可以将Unix时间戳作为参数传入
- $datetime->setTimezone(new DateTimeZone($timezone));
- return $datetime->format("Y-m-d H:i:s");
- }
- //2、日期转Unix时间戳
- function date_to_unixtime($date, $timezone = 'PRC') {
- $datetime= new DateTime($date, new DateTimeZone($timezone));
- return $datetime->format('U');
- }
- echo date_to_unixtime("1900-1-31 00:00:00"); //输出-2206425952
- echo '<br>';
- echo unixtime_to_date(date_to_unixtime("1900-1-31 00:00:00")); //输出1900-01-31 00:00:00
Tags: DateTime Unix
相关文章
- ·datetime类型日期时间转换成中文表示(2014-01-15)
- ·Django中datetime的处理方法(strftime/strptime)(2021-10-05)
- ·PHP转Unix时间戳strtotime函数源码分析及使用方法(2015-04-15)
- ·PHP中UNIX时间戳和日期间的转换与计算实例(2021-04-27)
- ·PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法(2021-05-17)
- ·PHP日期函数date格式化UNIX时间的方法(2021-05-17)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)