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 checkbox 取值详细说明
Aug 19 PHP
php压缩多个CSS为一个css的代码并缓存
Apr 21 PHP
在PHP中设置、使用、删除Cookie的解决方法
May 06 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
Jun 28 PHP
PHP基于CURL进行POST数据上传实例
Nov 10 PHP
php天翼开放平台短信发送接口实现方法
Dec 22 PHP
Thinkphp无限级分类代码
Nov 11 PHP
PHP 使用 Imagick 裁切/生成缩略图/添加水印自动检测和处理 GIF
Feb 19 PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
Jul 03 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
one.php 多项目、函数库、类库 统一为一个版本的方法
Aug 24 PHP
PHP中的异常处理机制深入讲解
Nov 10 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
实用函数8
2007/11/08 PHP
功能齐全的PHP发送邮件类代码附详细说明
2008/07/10 PHP
php设计模式 Decorator(装饰模式)
2011/06/26 PHP
php计算多维数组中所有值总和的方法
2015/06/24 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
PHP实现链表的定义与反转功能示例
2018/06/09 PHP
PHP 图片处理
2020/09/16 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
Iframe thickbox2.0使用的方法
2009/03/05 Javascript
Javascript 中介者模式实例
2009/12/16 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
详解JavaScript中的blink()方法的使用
2015/06/08 Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
2016/11/29 Javascript
JavaScript获取服务器端时间的方法
2016/11/29 Javascript
JS实现的加减乘除四则运算计算器示例
2017/08/09 Javascript
vue的mixins属性详解
2018/03/14 Javascript
AngularJS 事件发布机制
2018/08/28 Javascript
4个顶级开源JavaScript图表库
2018/09/29 Javascript
javascript实现日历效果
2019/06/17 Javascript
关于layui时间回显问题的解决方法
2019/09/24 Javascript
微信小程序报错: thirdScriptError的错误问题
2020/06/19 Javascript
python使用wxpy轻松实现微信防撤回的方法
2019/02/21 Python
用Python实现将一张图片分成9宫格的示例
2019/07/05 Python
python多线程使用方法实例详解
2019/12/30 Python
关于keras中keras.layers.merge的用法说明
2020/05/23 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
Python实现简单猜数字游戏
2021/02/03 Python
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
2021/03/05 HTML / CSS
Hotels.com爱尔兰:全球酒店预订
2017/02/24 全球购物
JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
2013/07/02 面试题
毕业生个人的求职信范文
2013/12/03 职场文书
公司年会演讲稿范文
2014/01/11 职场文书
入党现实表现材料
2014/12/23 职场文书
销售业务员岗位职责
2015/02/13 职场文书
Django基础CBV装饰器和中间件
2022/03/22 Python
python神经网络 使用Keras构建RNN训练
2022/05/04 Python