【发布时间】:2017-10-19 16:10:40
【问题描述】:
试图找出我收到以下错误的原因:
未定义索引插件 ID
我正在使用 Maatwebsite\Excel 进行导入,并尝试使用此处的指南:
https://appdividend.com/2017/06/12/import-export-data-csv-excel-laravel-5-4/
我认为我把所有东西都放在了正确的位置,但是我从这段代码中得到了上述错误:
public function import(Request $request)
{
if($request->file('imported-file'))
{
$path = $request->file('imported-file')->getRealPath();
$data = Excel::load($path, function($reader)
{
})->get();
if(!empty($data) && $data->count())
{
foreach ($data->toArray() as $row)
{
if(!empty($row))
{
$dataArray[] =
[
'plugin_id' => $row['Plugin ID'],
'cve' => $row['CVE'],
'cvss' => $row['CVSS'],
'risk' => $row['Risk'],
'host' => $row['Host'],
'protocol' => $row['Protocol'],
'port' => $row['Port'],
'name' => $row['Name'],
'synopsis' => $row['Synopsis'],
'description' => $row['Description'],
'solution' => $row['Solution'],
'see_also' => $row['See Also'],
'plugino_utput' => $row['Plugin Output']
];
}
}
if(!empty($dataArray))
{
Shipping::insert($dataArray);
return back();
}
}
}
}
这是在我的控制器文件中,并试图说明 CSV 中的标头与我的数据库中的不同。
知道为什么它会从 csv 方面抱怨列上的索引吗?
【问题讨论】:
-
在
foreach中尝试简单的dd($row);以查看$row数组 -
你能举一个语法例子吗?我做的不对(对 php 和 laravel 等很陌生)
-
复制
dd($row);并粘贴到foreach ($data->toArray() as $row) {之后 -
返回数组:13[ 屏幕上有一条记录,但不向数据库中插入任何内容
标签: php laravel csv indexing import