x64 PHP / MYSQL构建是否支持64位Windows Server上的完整64位时间戳
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了x64 PHP / MYSQL构建是否支持64位Windows Server上的完整64位时间戳,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1264字,纯文字阅读大概需要2分钟。
内容图文
可能是一个愚蠢的问题,但我需要找到答案.我们正在编写的应用程序需要处理遥远的过去和未来日期,并且我认为将64位Unix时间戳处理为日期将是一个简单的解决方案,前提是我正确理解了PHP manual,其中指出最大int值是平台相关且始终签名.因此,x64平台应该支持2 ^ 63个咬合,而x86平台应该支持2 ^ 31个最大咬合.
基本上,应用程序只处理整数时间戳,使我们相当复杂的算法有点“简单”.但是,尝试处理远程过去或将来的时间戳值会导致PHP中任何大于/ – 2 ^ 31的值的预期溢出对于当前的x86构建.我的解决方案是使用免费的visual c studio下载简单地编译x64 PHP版本,但在我深入研究之前,我想知道我的假设是否正确 – “Windows x64 PHP构建将正确处理64位int值,并且正确地将Windows’ticks’转换为64位Unix时间戳,用于其原生日期/时间函数,就像它为x86构建一样.“
例如:
echo mktime(0, 0, 0, 12, 31, 2055);
将返回正确的时间戳,而不是false.
同样的事情适用于MYSQL时间戳.例如:
SELECT UNIX_TIMESTAMP('2065-11-30 10:30:19');
将返回正确的值,而不是像我们运行的当前x86构建那样返回’0′.
– 我希望我不会太暧昧.提前致谢.我们只是一群科学极客而不是真正的程序员,并且正在努力解决这个“琐碎”的问题.
解决方法:
有趣的问题:我尝试了一段时间后运行一些测试,期待一个完整的64位时间戳给出了大爆炸和太阳燃烧之间的日期范围,但发现它仍然只是处理时的低32位传递给date()函数,即使回显时间戳整数值显示完整的64位范围.
编辑
但是,使用64位值范围设置dateTime对象时没有问题.
内容总结
以上是互联网集市为您收集整理的x64 PHP / MYSQL构建是否支持64位Windows Server上的完整64位时间戳全部内容,希望文章能够帮你解决x64 PHP / MYSQL构建是否支持64位Windows Server上的完整64位时间戳所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。