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 相关文章推荐
PHP 中的面向对象编程:通向大型 PHP 工程的办法
Dec 03 PHP
PHP支持多种格式图片上传(支持jpg、png、gif)
Nov 03 PHP
深入分析php中接口与抽象类的区别
Jun 08 PHP
php缓冲输出实例分析
Jan 05 PHP
php使用递归函数实现数字累加的方法
Mar 16 PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 PHP
分享一个漂亮的php验证码类
Sep 29 PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 PHP
搭建自己的PHP MVC框架详解
Aug 16 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
Jan 28 PHP
laravel 字段格式化 modle 字段类型转换方法
Sep 30 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
咖啡磨器 如何选购一台适合家用的意式磨豆机
2021/03/05 新手入门
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
PHP中对于浮点型的数据需要用不同的方法解决
2014/03/11 PHP
浅析php设计模式之数据对象映射模式
2016/03/03 PHP
PHP实现限制IP访问的方法
2017/04/20 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
2019/04/02 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
2019/04/10 PHP
JavaScript prototype属性使用说明
2010/05/13 Javascript
JQuery 操作select标签实现代码
2010/05/14 Javascript
JavaScript中的16进制字符(改进)
2011/11/21 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
javascript中的this详解
2014/12/08 Javascript
网页禁用右键菜单和鼠标拖动选择方法小结
2015/02/25 Javascript
jQuery插件开发精品教程(让你的jQuery更上一个台阶)
2015/11/07 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
微信小程序 template模板详解及实例
2017/02/21 Javascript
element-ui循环显示radio控件信息的方法
2018/08/24 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
jQuery实现每日秒杀商品倒计时功能
2019/09/06 jQuery
node koa2 ssr项目搭建的方法步骤
2020/12/11 Javascript
零基础写python爬虫之抓取百度贴吧代码分享
2014/11/06 Python
PyCharm 常用快捷键和设置方法
2017/12/20 Python
python读写csv文件的方法
2019/08/13 Python
Django模板标签{% for %}循环,获取制定条数据实例
2020/05/14 Python
Python如何实现定时器功能
2020/05/28 Python
Python ckeditor富文本编辑器代码实例解析
2020/06/22 Python
浅析Python 字符编码与文件处理
2020/09/24 Python
即兴演讲稿
2014/01/04 职场文书
《最大的“书”》教学反思
2014/02/14 职场文书
倡议书格式范文
2014/04/14 职场文书
2016年元旦寄语
2015/08/17 职场文书
2016年教师寒假学习心得体会
2015/10/09 职场文书
2016年感恩节寄语
2015/12/07 职场文书
小学班级标语口号大全
2015/12/26 职场文书