我想要使用 php 实现以下功能
我有一个 csv 文件。每个文件对应我数据库中的一行
有一个 html 表单可以让我选择 csv 文件。
然后一旦提交表单,我必须解析csv文件并相应地将数据插入数据库
我该怎么做?
最佳答案
读取 CSV 文件通常可以使用 fgetcsv
来完成函数 (根据您的 CSV 文件类型,您可能必须指定定界符、分隔符...作为参数)
这意味着逐行浏览你的文件不会比这样更难:
$f = fopen('/path/to/file', 'r');
if ($f) {
while ($line = fgetcsv($f)) { // You might need to specify more parameters
// deal with $line.
// $line[0] is the first column of the file
// $line[1] is the second column
// ...
}
fclose($f);
} else {
// error
}
(未经测试,但 the manual page of fgetcsv 上给出的示例应该可以帮助您入门)
当然,您必须获得上传文件的正确路径——参见$_FILE
超全局,以及关于Handling file uploads 的部分。 ,了解更多相关信息。
而且,要将数据保存到您的数据库中,您必须使用适合您的数据库引擎的 API——如果使用 MySQL,您应该使用以下任一方法:
关于php - 解析上传的 CSV 文件并将数据存储到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2454056/