Php Laravel CSV导入器未定义的偏移量:1
我正在从我的laravel项目导入一个csv文件,以将数据存储在mySQL中。 但是我得到了一个错误:未定义的偏移量:1 拉威尔指出了错误:Php Laravel CSV导入器未定义的偏移量:1,php,arrays,laravel,csv,Php,Arrays,Laravel,Csv,我正在从我的laravel项目导入一个csv文件,以将数据存储在mySQL中。 但是我得到了一个错误:未定义的偏移量:1 拉威尔指出了错误: // Insert to MySQL database $importData_arr = array(); $i = 0; while (($filedata = fgetcsv($file, 1000, ",")) !== FALSE) { $num = count
// Insert to MySQL database
$importData_arr = array();
$i = 0;
while (($filedata = fgetcsv($file, 1000, ",")) !== FALSE) {
$num = count($filedata );
// Skip first row (Remove below comment if you want to skip the first row)
/*if($i == 0){
$i++;
continue;
}*/
for ($c=0; $c < $num; $c++) {
$importData_arr[$i][] = $filedata [$c];
}
$i++;
}
fclose($file);
// Insert to MySQL database
foreach($importData_arr as $importData){
$insertData = array(
"username"=>$importData[1],
"name"=>$importData[2],
"gender"=>$importData[3],
"email"=>$importData[4]);
Page::insertData($insertData);
}
不如检查一下
$importData
,看看它能做什么have@lagbox我已经编辑了我的代码,以表明我应该根据insertdata数组中定义的内容创建数组键?只需转储$importData
,并查看其中的内容即可。。。不要猜测将它转储到您实际创建并正在使用它的位置。。。foreach的。。。这只是PHP,这里没有任何与Laravel相关的内容,但是您将分隔符/分隔符定义为,
(fgetcsv的第三个参数)
public function up()
{
Schema::create('Rims', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->float('price');
$table->boolean('inStock');
$table->string('imageURL');
$table->timestamps();
});
}