Mar*_*tin 1 php laravel laravel-excel
我有一个与 Laravel Excel 相关的问题。我的标题充满了日期,例如:2018-05-23。但是当我使用 excel 扩展名阅读它时:
$data = Excel::load($request['file'], function($reader) {})->get();
Run Code Online (Sandbox Code Playgroud)
扩展不会将标题日期视为日期。取而代之的是将其转换的日期,某些数字-例如:43243。
这是dd工作表:
重要说明:当日期在正常行中(不在标题中)时,日期转换得很好。
Laravel Excel 版本 (maatwebsite/excel) - 2.1.0
Laravel 版本 - 5.5
数字来自 excel 本身,日期作为数值存储在 excel 中。 http://www.cpearson.com/excel/datetime.htm
对于Laravel框架5.6和
maatwebsite/excel包版本3.1,要将日期从 excel 数字转换为普通日期格式,PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($dateFromExcel)可以使用此功能。它接受整数(excel 日期)并返回 DateTime 对象。
更多信息可以在这里找到https://github.com/Maatwebsite/Laravel-Excel/issues/1832
我认为是由于 ExcelParser。它将日期标头字段转换为一些随机数。
因此,为了使其满足您的要求,请在双引号内添加列标题。
示例:“2018-05-23”