1.错误背景
读取出来的话是一个万位整形数据41807,这显然不是想要的日期
读取出来的结果:2023-12-27
2.解决方案
法1:
$t = 41807;//读取到的值 $n = intval(($t - 25569) * 3600 * 24); //转换成1970年以来的秒数 echo gmdate('Y-m-d H:i:s',$n);//格式化时间,不是用date时区相差8小时的
法2:
用PHPExcel从xlsx中获取的时间的处理变成了Gregorian历法,需要将它还原成Julian Day历法,方法如下:
function excelTime($t){ return gmdate("Y-m-d H:i:s", PHPExcel_Shared_Date::ExcelToPHP($t)); }