php把excel数值格式转成日期格式
2021-04-09 18:27
标签:UNC 形式 fun 原因 获得 格式 数值 数字 ret 在excel中:40847对应2011-10-31,是日期的数值型表现形式。 原因: function _excelNumToDate($num) php把excel数值格式转成日期格式 标签:UNC 形式 fun 原因 获得 格式 数值 数字 ret 原文地址:https://www.cnblogs.com/WebLinuxStudy/p/12443232.html
在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中用函数正确的显示出来
{
$date = ‘‘;
if ($num == (int)$num) {
//获得秒数
$time = ($num - 25569) * 24 * 60 * 60;
return date(‘Y-m-d‘, $time);
}
return $date;
}