我想使用php
以下功能我有一个csv文件。每个文件对应于我的数据库中的一行
有一个html表单允许我选择csv文件。
然后提交表单后,我必须解析csv文件并相应地将数据插入到数据库中
我该怎么做?
答案 0 :(得分:9)
通常可以使用fgetcsv
函数来读取CSV文件(取决于您的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,您应该使用: