我发现了一个解析excel文件的PHP脚本,但似乎有某种与日期相关的编号系统或编码。例如,原始.xls spreadseets包含以下格式的日期:
16-Sep-11
但是,脚本解析的信息显示以下整数来表示此日期:
40802
如果有人可以通过确定日期使用的表示形式来帮助我,那么我想我可以弄清楚如何进行转换。
答案 0 :(得分:3)
根据相关文件的属性,Excel使用两种不兼容的格式之一来存储日期,即“1900”系统和“1904”系统。默认情况下,源自Windows的文件将使用“1900”系统,而源自Mac的文件将使用“1904”系统。在1900年的系统中,存储的数字是自1900年1月1日以来经过的天数,而在1904年的系统中,存储的数字是自1904年1月1日以来经过的天数。有各种历史原因(或者是歇斯底里的葡萄干?)为什么Excel使用这两种格式。时间也以类似的方式存储,整数部分是日期,小数部分是已经过去的那一天的部分。
以下是Microsoft Knowlegebase文章,其中包含更多信息:http://support.microsoft.com/kb/214330
答案 1 :(得分:0)
Excel日期基于1900年1月1日的天数。This page提供有关问题的详细信息。