我想在laravel中导入xls文件并导出数据库中的数据。 但是我在导入
时遇到以下错误at HandleExceptions-> handleError(8,'未定义变量:内容',' C:\ Users \ Kuldeeo \ Downloads \ app \ vendor \ phpoffice \ phpexcel \ Classes \ PHPExcel \ Shared \ ZipArchive.php',174,数组(' fileName' =>' _rels / .rels',' list' => 0,&# 39; listCount' => 1,' list_index' => -1,' i' => 1,'提取' => 0 ,' filename' =>' rels / .rels'))
我尝试过添加
PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP);
在Reader / Excel2007.php和Writer / Excel2007.php
中甚至多次更新了作曲家。下载xls文件正在工作,但导入它,正在产生错误。 请帮助.....
答案 0 :(得分:0)
我在laravel中使用package = "maatwebsite/excel": "^2.1"
来导入xls文件并像这样存储在DB中我希望它可以帮到你。
Route::get('/route_name', function () {
\Excel::load("file_path/file_name.xls", function($reader) {
$sheetTitle = array();
$results = $reader->all();
foreach($results as $key=>$sheet)
{
$sheetTitle[$key]["id"] = (int)$sheet->id;
$sheetTitle[$key]["plan_id"] = (int)$sheet->plan_id;
$sheetTitle[$key]["description"] = $sheet->description;
}
\DB::table('table_name')->insert($sheetTitle);
return dd(\DB::table('table_name')->get());
});
});
id
,plan_id
,description
是Excel文件的标题(第一行)。
更新
或者你可以在控制器中使用
Route::post('/route_name', 'UserController@importData');
并在UserController
function importData(Request $request){
\Excel::load($request->file('excel_file'), function($reader) {
.....//All code will be same as above.
}