问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php读取excel中的日期出错。

发布网友 发布时间:2022-04-21 23:26

我来回答

3个回答

热心网友 时间:2022-04-06 08:34

1、工作簿处于“公式审核”状态,按ctrl+~切回到正常工作状态就可以。
2、如果还不行,请在表格之外任意一处把单元格设置成日期格式,然后随便填一个日期,再用格式刷刷你表格中的日期
方法:
写入excel的时候在时间上加‘’,让他变成字符串,读取就没错了。
excelTime的函数也可以正确转化时间

error_reporting(E_ALL);
date_default_timezone_set('Asia/shanghai');
/** PHPExcel_IOFactory */
require_once '../Classes/PHPExcel/IOFactory.php';
$inputFileName = '6081076641077444758.xls';
$objReader = new PHPExcel_Reader_Excel5();
$objPHPExcel = $objReader->load($inputFileName);
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumn = $sheet->getHighestColumn(); // 取得总列数

$tempArray = array();
for($j=2;$j<=$highestRow;$j++){
for($k='A';$k<=$highestColumn;$k++){
if($k=='M'||$k=='O') //M列和O列是时间
$tempArray[] = excelTime($objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue());
else
$tempArray[] = $objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue();
}
print_r($tempArray);
unset($tempArray);
}

function excelTime($date, $time = false) {
if(function_exists('GregorianToJD')){
if (is_numeric( $date )) {
$jd = GregorianToJD( 1, 1, 1970 );
$gregorian = JDToGregorian( $jd + intval ( $date ) - 25569 );
$date = explode( '/', $gregorian );
$date_str = str_pad( $date [2], 4, '0', STR_PAD_LEFT )
."-". str_pad( $date [0], 2, '0', STR_PAD_LEFT )
."-". str_pad( $date [1], 2, '0', STR_PAD_LEFT )
. ($time ? " 00:00:00" : '');
return $date_str;
}
}else{
$date=$date>25568?$date+1:25569;
/*There was a bug if Converting date before 1-1-1970 (tstamp 0)*/
$ofs=(70 * 365 + 17+2) * 86400;
$date = date("Y-m-d",($date * 86400) - $ofs).($time ? " 00:00:00" : '');
}
return $date;
}

热心网友 时间:2022-04-06 09:52

$t =41807; //读取到的值
$n = intval(($t - 25569) * 3600 * 24); //转换成1970年以来的秒数
echo gmdate('Y-m-d H:i:s' $n);//格式化时间

热心网友 时间:2022-04-06 11:27

能把代码贴出来吗
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
股骨头坏死手术方式 退订金没有收据了怎么办 泸州台湾通行证外地人补办时间 运动手表安全吗(运动手表对身体有害吗) 扫地机器人随机式和规划式的区别 茶怎么喝才正确 如何查找电线接头 炸鱼片的做法 如何制作炸鱼片 福建泉州哪里有织带厂在招工 Apple 苹果 MacBook Air 2014款-适用对象 如何用php读取Exce表中的多个sheet phpexcel怎么读取加密的excel文档? 现在在开发一个PHP程序,需要读取EXCEL里面的值,... php excel reader读取excel内容 西湖文化广场科技馆,春节开放吗 苹果13投屏后如何关闭抖音同步投屏 新的浙江科技博物馆与上海科技馆的差距? 苹果12pro为什么不能投屏的同时刷抖音 抖音投屏到电视上怎么人物都扭曲了 bizhub185打印机出现维修召唤m2怎么处理 打印机出现维修召唤m2怎么解决 cad制图怎样画圆角 打印机出现M2是什么原因上面显示维修召唤,点击什... 如何做好事业单位人事档案管理 美能达185打印机出现维修召唤m2怎么处理 震旦打印机ad239出现维修召唤M2是什么问题 柯尼卡美能达7818出现维修召唤m2怎么处理 求一年的总结 急!被事业单位录取,要份总结? 打印机维修召唤m2怎么进去维修模式 php上传excel文件,如何读取文件中的信息? php 5.4 如何读取excel中的列名跟值,导入到数据库... php怎么导入大量数据的excel 如何用php 制作导入excel phpexcel 读取日期问题 《林教头风雪山神庙》评点 谁知道电影《星际穿越》高清国语版下载,最好是迅雷的 谁知道电影《星际穿越》完整版地址? 用150字概括《林教头风雪山神庙》 销售蜂蜜要卫生许可证吗? 林教头风雪山神庙讲了什么内容? 我想卖散装蜂蜜;现在有食品流通许可证;还需要卫... 系列的每一部电影都堪称经典,星际穿越的剧情简介... 林教头风雪山神庙概括 卖自己家养的蜂蜜,需要身份证件 食品流通许可证怎... 电影《星际穿越》高清完整版资源哪里有啊??无删版 林教头风雪山神庙的简写! 淘宝卖蜂蜜要一定要食品卫生许可证吗 山神庙在&lt;林教头风雪山神庙&gt;中起什么作用? 卖蜂蜜需要办卫生许可证吗