gpt4 book ai didi

Phpexcel 得到错误的日期

转载 作者:行者123 更新时间:2023-11-29 21:34:58 26 4
gpt4 key购买 nike

我正在使用 phpexcel 将 Excel 文档导入到网站。我在获取日期格式时遇到问题。

日期格式是 dd.mm.Y 但在获取 cellValue 后我得到 samo 随机数 ( float(42391) )

这是我的代码:

$datum = $objPHPExcel->getActiveSheet()->getCell('A'.$i)->getValue();

这应该得到日期吗?

            $file_name = clean_uri($_FILES['excel']['name']);
$file_name = 'povijest_'.$file_name;
$folder_s = 'upload_data/excel';

move_uploaded_file($_FILES['excel']['tmp_name'], '../'.$folder_s.'/'.$file_name);

$objPHPExcel = PHPExcel_IOFactory::load('../'.$folder_s.'/'.$file_name);
$allDataInSheet = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
$highestColumm = $objPHPExcel->getActiveSheet()->getHighestColumn();
$colNumber = PHPExcel_Cell::columnIndexFromString($highestColumm);
$arrayCount = count($allDataInSheet);

for($i=4;$i<=$arrayCount;$i++){
$datum = $objPHPExcel->getActiveSheet()->getCell('A'.$i)->getValue();
$prva = $objPHPExcel->getActiveSheet()->getCell('C'.$i)->getValue();
$zadnja = $objPHPExcel->getActiveSheet()->getCell('D'.$i)->getValue();
$najvisa = $objPHPExcel->getActiveSheet()->getCell('E'.$i)->getValue();
$najniza = $objPHPExcel->getActiveSheet()->getCell('F'.$i)->getValue();
$prosjecna = $objPHPExcel->getActiveSheet()->getCell('G'.$i)->getValue();
$promjena = $objPHPExcel->getActiveSheet()->getCell('H'.$i)->getValue();
$broj_transakcija = $objPHPExcel->getActiveSheet()->getCell('I'.$i)->getValue();
$kolicina = $objPHPExcel->getActiveSheet()->getCell('J'.$i)->getValue();
$promet = $objPHPExcel->getActiveSheet()->getCell('K'.$i)->getValue();

var_dump($datum);
exit;

最佳答案

它确实获得了日期......这不是一个随机数,而是一个 MS Excel 序列化日期时间戳。与您在 PHP 中使用 unix 时间戳,然后使用 date() 函数对其进行格式化的方式相同,MS Excel 使用自己的时间戳值,该值是天数的计数自 1900 年 1 月 1 日起(或 1904 年 1 月 1 日,如果在 Mac 上创建)。要以格式显示它,您需要应用数字格式掩码。

单元格的 getValue() 方法将从单元格返回原始值,但 getFormattedValue() 将返回应用了数字格式掩码的值

还有记录的方法(例如 PHPExcel_Shared_Date::ExcelToPHP($msExcelSerializedTimestamp)) 用于在 MS Excel 时间戳和 unix 时间戳或 DateTime 对象之间进行转换,以及检查单元格是否包含日期

关于Phpexcel 得到错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34987866/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com