我已经整理了一个脚本,该脚本将上传CSV文件,然后将数据提取到已经制作的表中。我想这样做,所以第一行(列标题)将不会插入表中,但其余的数据将是。
$fp = fopen($_SESSION['filename'],"r");
while (($data = fgetcsv($fp, 1000, ",")) !== FALSE)
{
$import="INSERT into csv_table(name,address,age) values('$data[0]','$data[1]','$data[2]')";
mysql_query($import) or die(mysql_error());
}
fclose($fp);
这是我用来从csv文件中提取数据的代码的一部分。
非常感谢您对此事的任何帮助!
答案 0 :(得分:11)
只需在while
循环之前添加以下内容即可阅读第一行:
fgetcsv($fp, 1000, ",");
此后,while
循环从第二行开始。
答案 1 :(得分:1)
解开它。
在外部创建一个布尔标志,并在使用if语句进入循环而不是导入时切换它。
答案 2 :(得分:0)
只需空白阅读:
$fp = fopen($_SESSION['filename'],"r");
$headerLine = true;
while (($data = fgetcsv($fp, 1000, ",")) !== FALSE)
{
if($headerLine) { $headerLine = false; }
else {
$import="INSERT into csv_table(name,address,age) values('$data[0]','$data[1]','$data[2]')";
mysql_query($import) or die(mysql_error());
}
}
fclose($fp);