查找错误array_combine():两个参数应具有相等数量的元素

时间:2019-05-13 14:09:09

标签: laravel

我正在将CSV文件导入Laravel控制器并将数据插入两个表中,但出现错误-

  

array_combine()两个参数应具有相等数量的元素

function csvToArray ($filename = '', $delimiter = ',')
{
If (! file_exists ($filename) ||!is_readable($filename))
return false;
$header = null;
$data = array ();
if (($handle = fopen ($filename,'r')) !== false)
{
   while (($row = fgetcsv($handle, 300000, $delimiter)) !== false)
     {
      if (!$header)
       $header = $row;
      else
      $data[] = array_combine($header, $row);
     }
    fclose($handle);
}
return $data;
}

public function importCsv()
{
$file = public_path('file/city_master.csv');
$customerArr_data = $this->csvToArray($file);
for ($i = 0; $i < count($customerArr_data); $i++)
{
dd($customerArr_data);
}
return 'not in array';    
}

1 个答案:

答案 0 :(得分:0)

请尝试改用array_merge()。希望这会有所帮助