【问题标题】:How to convert the php excel read date to Y-m-d format?如何将 php excel 读取日期转换为 Y-m-d 格式?
【发布时间】:2016-05-24 10:05:18
【问题描述】:

强文本 包含'PHPExcel/IOFactory.php';

// This is the file path to be uploaded.
$inputFileName = 'admin/' . $_SESSION['file_name'];

try {
    $objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
} catch (Exception $e) {
    die('Error loading file "' . pathinfo($inputFileName, PATHINFO_BASENAME) . '": ' . $e->getMessage());
}

$allDataInSheet = $objPHPExcel->getActiveSheet()->toArray(null, true, true, true);

把日期放在像8/28/1980这样的Excel表格中,但是我得到了这样的日期08-28-80,我需要得到这样的值1980-08-28

请帮帮我!!

【问题讨论】:

  • 这是一个真正的 Excel 文件,还是您正在阅读的 csv 文件?如果是真实的 Excel 文件,这个日期实际使用的格式掩码是什么?
  • 您还可以在调用toArray() 方法之前将格式掩码 (YYYY-MM-DD) 应用于这些单元格
  • 我使用的是 ,xlsx 格式,从 excel 数据日期值变成这样 08-28-80
  • 一个文件的扩展名是xlsx,并不代表它真的是一个OfficeOpenXML文件,你可以使用IOFactory的identify()方法来验证
  • 但如果它真的是 OfficeOpenXML,那么它应该有这些日期的格式掩码,那么 toArray()$formatData 参数应该应用该格式掩码。如果不是,则首先在文件中未正确设置掩码,或者您使用了特定于语言环境的掩码而不是通用掩码。

标签: php phpexcel phpexcelreader


【解决方案1】:

如果您的日期是这样的 08-28-80,您将面临一个问题。如果你明白我的意思,你就无法确定年份是 1980 年还是 2080 年。

你可以使用这个功能

function convert_date($data){
    $date_arr = explode("-",$data);
    if($date_arr[2] >= 0 && $date_arr[2] < 17){
        $new_date = "20".$date_arr[2]."-".$date_arr[1]."-".$date_arr[0];
    } else {
        $new_date = "19".$date_arr[2]."-".$date_arr[1]."-".$date_arr[0];
    }
    return $new_date;
}

希望这个功能对你有帮助

【讨论】:

  • 但是 excel 日期值变得像这样 08-28-80
  • 日期是这样的 -> 08-28-80 你想这样 -> 1980-08-28 ?
  • 我已经更新了我的代码,试试看,如果你需要任何帮助,请告诉我
  • 我怎样才能从 excel 中读取数据?,现在我得到这样的 08-28-80,如果我得到这样的 1980-08-28 或全年的 eny 格式..我可以使它格式化,我想要..但我无法从阅读日期列中获得全年,这是我面临的 pblm .. :(
  • 尝试使用 Dropbox 链接或任何其他方法将您的文件发送给我,我会修复它
【解决方案2】:

我希望这是你的期望。

请将excel日期值转成字符串,

<?php
$dateVal = '8/28/1980'; // Excel date value
$date = strtotime($dateVal);
$newformat = date('Y-m-d',$date);
echo $newformat;
?>

【讨论】:

  • 但是 excel 日期值越来越像 08-28-80,
猜你喜欢
  • 2019-08-16
  • 2023-03-08
  • 1970-01-01
  • 2012-07-21
  • 2021-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多