PHP_关于php时间戳最大支持到2038年问题解决办法
来源:互联网 发布:手机老是显示网络异常 编辑:程序博客网 时间:2024/05/21 08:13
这个问题在64位系统中并不存在,因为是在32位系统中,以秒计算php只支持到 2147483648(2^31,到 2038-01-19 03:14:08)
:
Note:
有效的时间戳通常从 Fri, 13 Dec 1901 20:45:54 GMT 到 Tue, 19 Jan 2038 03:14:07 GMT(对应于 32 位有符号整数的最小值和最大值)。不是所有的平台都支持负的时间戳,那么日记范围就被限制为不能早于 Unix 纪元。这意味着在 1970 年 1 月 1 日之前的日期将不能用在 Windows,一些 Linux 版本,以及几个其它的操作系统中。不过 PHP 5.1.0 及更新的版本克服了此限制。 —— [ PHP手册 ]
如果在32系统PHP 5.1.0之后的版本
,可以使用new DateTime
解决:
例如:
/*可替换传统date函数*/$utc_value = 2247484647$curformat = 'Y-m-d';function newDate($curformat, $utc_value){ while(1) { if($utc_value>2147483647) { if(date('Y', $utc_value)<2038) { $mydate2 = new DateTime('@'.$utcValue); $string = $mydate2->format($curformat); break; } } $string = date($curformat, $utc_value); break; } return $string;}
/*可替换传统strtotime函数*/$str_time = '2100-10-02';function newStrToTime($str_time){ $result = strtotime($str_time); if(empty($result)) { $date = new DateTime($str_time); $result = $date->format('U'); } return $result;}
具体DateTime类
使用方法请详查 -[ PHP手册-DateTime类 ]
0 0
- PHP_关于php时间戳最大支持到2038年问题解决办法
- PHP输出到文件时 不会换行问题解决办法
- php 乱码 问题解决办法
- 关于jsp中文提交到后台乱码问题解决办法
- XAJAX中文支持问题解决办法
- PHP怪异问题解决办法之一
- nginx配置支持ssi不起作用问题解决办法
- iOS 关于tabbar点击navigationcontroller root到根视图的问题解决办法
- 关于php中验证码显示不出来的问题解决办法
- 关于thinkphp应用配置config.php无法加载的问题解决办法
- PHP_零基础学php
- PHP MySQL字符集 乱码问题解决办法
- php float转为int 失真问题解决办法
- php连接ORACLE数据库问题解决办法
- php htmlentities汉字中文乱码问题解决办法
- PHP 极光推送 ios-dev 问题解决办法
- PHP关于时间的时间戳
- 关于子函数返回字符串的问题解决办法
- 大牛文章转载一
- 隐蔽通信(FQ)和侦查取证那些事儿
- cairo学习
- Android Studio Android SDK Android NDK 官方下载地址
- Java网络编程从入门到精通(30):定制accept方法
- PHP_关于php时间戳最大支持到2038年问题解决办法
- 我觉定从现在开始开个博客
- Shell 字符串截取:${varible##*string} ${varible#*string} ${varible%%string*} ${varible%string*}
- IOS之身份证号码校验
- 年轻程序员需要学习的5大经验
- Java.lang.Enum.ordinal()方法
- 代理模式——静态代理
- java高分局之并行流的缩减操作
- 服务器设计范式(二)