php - 2038年的问题

查看:96
本文介绍了php - 2038年的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

今天遇到一个问题,就是php的时间戳在遇到2038年后,时间就会溢出,php提供的时间函数datetime可以解决这个问题。

$date = '2090-10-01';
$datetime = new DateTime($date);
echo '<p>正常时间: ', $datetime->format('Y-m-d H:i'), '</p>';//正常时间: 2090-10-01 00:00
echo '<p>时间溢出: ', date('Y-m-d H:i', strtotime($date)), '<p>';//时间溢出: 1970-01-01 08:00

但是感觉这个时间不太实用啊,它需要指定datetime格式的时间,而不是时间戳,如果我都有时间了,我还要你的format干嘛。
我现在有一个时间点,需要加上一个时间间隔,strtotime('+1000 year'),这个新得到的时间超过了2038年,结果是1970-01-01。。。。,怎么获取到相加的正确结果呢?

解决方案

一看你就没看文档,DateTime对象可以用时间戳的哦,详细看http://php.net/manual/zh/date...

这篇关于php - 2038年的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆