zl程序教程

您现在的位置是:首页 >  后端

当前栏目

php中数据的批量导入(csv文件)

2023-06-13 09:14:17 时间

  有时写程序时后台要求把大量数据导入数据库中,比如计算机考试成绩的查询、电话簿的数据等一般都是存放在excel中的,这时我们可把数据导出成csv文件,然后通过以下程序即可在后台批量导入数据到数据库中。

  下面只是主要程序部分:

<?php
/*****************************************
**********作者:冲星/arcow****************
**********njj@nuc.edu.cn*******************
**********php导入csv文件到数据库**********
**********同时计算程序执行时间***********
**********www.knowsky.com***********
****************************************/
//定义获取时间函数
functiongetmicrotime(){
   list($usec,$sec)=explode("",microtime());
   return((float)$usec+(float)$sec);
}
?>

<?php
$time_start=getmicrotime();
include("db.inc.php");//连接数据库
$db=newtestcsv;
?>
<?php
$handle=fopen("test.csv","r");
$sql="insertintoscores(idcard,names,num,sex,nation,score)values("";
while($data=fgetcsv($handle,1000,",")){
  $num=count($data);
  for($c=0;$c<$num;$c++){
      if($c==$num-1){$sql=$sql.$data[$c]."")";break;}
      $sql=$sql.$data[$c]."","";
  }
print"<br>";
echo$sql."<br>";
$db->query($sql);
echo"SQL语句执行成功!<br>";
$sql="insertintoscores(idcard,names,num,sex,nation,score)values("";
}
fclose($handle);
$time_end=getmicrotime();
$time=$time_end-$time_start;
echo"程序执行时间:".$time."秒";
?>