PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】


Posted in PHP onJune 13, 2018

本文实例讲述了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
PHP 相关文章推荐
提取HTML标签
Oct 09 PHP
PHP新手上路(十四)
Oct 09 PHP
Zend studio文件注释模板设置方法
Sep 29 PHP
PHP实现取得HTTP请求的原文
Aug 18 PHP
php实现singleton()单例模式实例
Nov 06 PHP
PHP实现无限极分类图文教程
Nov 25 PHP
phpMyAdmin安装并配置允许空密码登录
Jul 04 PHP
使用xampp搭建运行php虚拟主机的详细步骤
Oct 21 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
Jun 13 PHP
laravel实现批量更新多条记录的方法示例
Oct 22 PHP
Laravel使用消息队列需要注意的一些问题
Dec 13 PHP
thinkPHP5使用Rabc实现权限管理
Aug 28 PHP
php中html_entity_decode实现HTML实体转义
Jun 13 #PHP
php处理多图上传压缩代码功能
Jun 13 #PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 #PHP
PHP实现打包zip并下载功能
Jun 12 #PHP
PHPUnit测试私有属性和方法功能示例
Jun 12 #PHP
PHP+redis实现的悲观锁机制示例
Jun 12 #PHP
thinkPHP5框架auth权限控制类与用法示例
Jun 12 #PHP
You might like
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
使用Sphinx对索引进行搜索
2013/06/25 PHP
Symfony2联合查询实现方法
2016/03/18 PHP
Centos 6.5系统下编译安装PHP 7.0.13的方法
2016/12/19 PHP
php redis实现文章发布系统(用户投票系统)
2017/03/04 PHP
PHP设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
jquery 页面滚动到指定DIV实现代码
2013/09/25 Javascript
jQuery使用andSelf()来包含之前的选择集
2014/05/19 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
2016/07/11 Javascript
Angular2内置指令NgFor和NgIf详解
2016/08/03 Javascript
javascript判断firebug是否开启的方法
2016/11/23 Javascript
Ionic2开发环境搭建教程
2020/08/20 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
nuxt.js中间件实现拦截权限判断的方法
2018/11/21 Javascript
python使用PythonMagick将jpg图片转换成ico图片的方法
2015/03/26 Python
python实现基于两张图片生成圆角图标效果的方法
2015/03/26 Python
python更改已存在excel文件的方法
2018/05/03 Python
python模块smtplib学习
2018/05/22 Python
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
对Python闭包与延迟绑定的方法详解
2019/01/07 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
Python下应用opencv 实现人脸检测功能
2019/10/24 Python
Python操作redis和mongoDB的方法
2019/12/19 Python
如何通过Django使用本地css/js文件
2020/01/20 Python
python pandas移动窗口函数rolling的用法
2020/02/29 Python
食品营养与检测应届生求职信
2013/11/08 职场文书
教师实习自我鉴定
2013/12/13 职场文书
养成教育经验材料
2014/05/26 职场文书
奉献爱心演讲稿
2014/09/04 职场文书
门卫岗位职责
2015/02/09 职场文书
五四青年节活动总结
2015/02/10 职场文书
十二生肖观后感
2015/06/12 职场文书
工程移交协议书
2016/03/24 职场文书
html网页引入svg图片的4种方式
2022/08/05 HTML / CSS