首页 > 语言 > PHP > 正文

php把excel数值格式转成日期格式问题

2024-09-04 11:45:40
字体:
来源:转载
供稿:网友

下面来看一个关于php把excel数值格式转成日期格式问题,因为自己在做一个转换时碰到问题,后来网上找到解决办法与原因下面一起看看.

在excel中:40847对应2011-10-31,是日期的数值型表现形式.

在PHP中,echo date('Y-m-d H:i:s',40847);//结果1970-01-01 11:52:30

原因:PHP 的时间函数是从1970-1-1日开始计算的,单位是秒数,但是 EXCEL的是从1900-1-1日开始算的单位是天数.

如果只计算1970以后的时间的话,就好处理了,先获得 EXCEL中 1970-1-1 代表的数字,我查了是25569,现在要把excel中的40947,在php中用函数正确的显示出来,代码如下:

  1. <?php 
  2.   $time = (40847 – 25569) * 24*60*60; //获得秒数 
  3.   echo date('Y-m-d H:i:s'$time);   //出来 2011-10-31 
  4. ?>//开源软件:Vevb.com

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表