【发布时间】:2021-05-12 09:39:17
【问题描述】:
我已经编写了以下代码来导入数据库中的 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(name,phone,address) 值 (�ǞDO97*�~��ɸ8�O�c|n���E�
为什么会出现此错误?是否有任何 Lumen 包可以将 CSV 导入具有适当文档的数据库?
【问题讨论】:
标签: php mysql lumen import-csv