WebLinuxStudy

在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中用函数正确的显示出来

function _excelNumToDate($num)
{
  $date = \'\';
  if ($num == (int)$num) {
    //获得秒数
    $time = ($num - 25569) * 24 * 60 * 60;
    return date(\'Y-m-d\', $time);
  }
  return $date;
}

 

posted on 2020-03-08 16:35  WebLinuxStudy  阅读(391)  评论(0编辑  收藏  举报

分类:

技术点:

相关文章:

  • 2021-12-02
  • 2021-07-20
  • 2021-12-30
  • 2021-11-15
  • 2021-11-02
  • 2021-12-23
猜你喜欢
  • 2022-03-06
  • 2021-12-23
  • 2022-12-23
  • 2022-01-07
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案