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 Array交叉表实现代码
Aug 05 PHP
写出高质量的PHP程序
Feb 04 PHP
phpize的深入理解
Jun 03 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
PHP利用APC模块实现文件上传进度条的方法
Jan 26 PHP
PHP输出两个数字中间有多少个回文数的方法
Mar 23 PHP
php查询whois信息的方法
Jun 08 PHP
PHP+MYSQL中文乱码问题
Jul 01 PHP
PHP正则获取页面所有图片地址
Mar 23 PHP
YII视图整合kindeditor扩展的方法
Jul 13 PHP
PHP程序员必须知道的两种日志实例分析
May 14 PHP
PHP强制转化的形式整理
May 22 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入门
2006/10/09 PHP
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
php的单例模式及应用场景详解
2021/02/27 PHP
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
2010/05/18 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
2010/06/07 Javascript
JS仿淘宝实现的简单滑动门效果代码
2015/10/14 Javascript
纯JS实现简单的日历
2017/06/26 Javascript
详解webpack介绍&amp;安装&amp;常用命令
2017/06/29 Javascript
JS库之ParticlesJS使用简介
2017/09/12 Javascript
详解Vuex管理登录状态
2017/11/13 Javascript
自定义vue组件发布到npm的方法
2018/05/09 Javascript
微信小程序画布圆形进度条显示效果
2020/11/17 Javascript
jquery简单实现纵向的无缝滚动代码实例
2019/04/01 jQuery
ES6的异步终极解决方案分享
2019/07/11 Javascript
Angular8路由守卫原理和使用方法
2019/08/29 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
详细解读Python中的__init__()方法
2015/05/02 Python
将Python代码打包为jar软件的简单方法
2015/08/04 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
python django事务transaction源码分析详解
2017/03/17 Python
在python下读取并展示raw格式的图片实例
2019/01/24 Python
python里 super类的工作原理详解
2019/06/19 Python
python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算
2019/07/18 Python
python实现字典嵌套列表取值
2019/12/16 Python
使用PyWeChatSpy自动回复微信拍一拍功能的实现代码
2020/07/02 Python
python图片验证码识别最新模块muggle_ocr的示例代码
2020/07/03 Python
HTML4和HTML5之间除了相似以外的10个主要不同
2012/12/13 HTML / CSS
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
校运会入场式解说词
2014/02/10 职场文书
2014年计划生育协会工作总结
2014/11/14 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
导游词之重庆渣滓洞
2020/01/08 职场文书
Nginx本地目录映射实现代码实例
2021/03/31 Servers