php 数值转时间格式,php把excel数值格式转成日期格式

本文介绍如何将Excel的日期数值(如40847对应1900-1-1后的天数)转换为PHP的'y-m-d'格式,通过计算1970-1-1在Excel中的数值(25569),并提供了一个函数`function_excelnumtodate()`来实现这一过程。
摘要由CSDN通过智能技术生成

在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;

}

希望与广大网友互动??

点此进行留言吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值