Laravel excel maatwebsite 3.1 import,excel 单元格中的日期列返回为未知格式编号。如何解决这个问题?
2022-08-30 19:23:19
通过使用Maatwebsite/Laravel-Excel版本3.1导入excel工作表,在这里我遇到了excel工作表的发布日期时间列返回未知数字。如何解决这个问题?示例:考虑单元格值“29/07/1989”,并在导入时返回为“32178”。
通过使用Maatwebsite/Laravel-Excel版本3.1导入excel工作表,在这里我遇到了excel工作表的发布日期时间列返回未知数字。如何解决这个问题?示例:考虑单元格值“29/07/1989”,并在导入时返回为“32178”。
数字来自excel本身,即以数值形式存储在excel中的日期。http://www.cpearson.com/excel/datetime.htm
对于Laravel框架5.6和maatwebsite/excel软件包3.1版本,要将日期从excel数字转换为普通日期格式,可以使用此功能。它接受整数(excel date)并返回DateTime对象。
PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($dateFromExcel)
更多信息可以在这里找到 https://github.com/Maatwebsite/Laravel-Excel/issues/1832
解决!这是我用来解决问题的代码:
Carbon\Carbon::instance(\PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($value));