我编写了以下代码来导入数据库中的 CSV 数据:
if(($request->file("csv") !== null)){
$filename=$_FILES["csv"]["tmp_name"];
if($_FILES["csv"]["size"] > 0)
{
$file = fopen($filename, "r");
while (($getData = fgetcsv($file, 10000, ",")) !== FALSE)
{
DB::table('users')->updateOrInsert(
['email' => $getData[1]],
['name' => @$getData[0], 'phone' => @$getData[2], 'address'=> @$getData[3]]
);
}
fclose($file);
}
}
但是在插入时会出现以下错误:
<块引用>SQLSTATE[HY000]:一般错误:1366 字符串值不正确:'\xE0\xA5\xC7\x9EDO...' 列 'email' 在第 1 行(SQL:插入到 users
({{ 1}}, email
, name
, phone
) 值 (�ǞDO97*�~��ɸ8�O�c|n���E�
为什么我会收到这个错误?是否有任何 Lumen 包可以将 CSV 导入具有适当文档的数据库?