Sometimes when writing a program, the background requires a large amount of data to be imported into the database. For example, computer test score inquiries, phone book data, etc. are generally stored in excel. At this time, we can export the data into a csv file and then use The following program can batch import data into the database in the background.
The following is just the main program part:
The code is as follows
代码如下 |
复制代码 |
/*****************************************
**********作者:冲星/arcow****************
**********njj@nuc.edu.cn*******************
**********php导入csv文件到数据库**********
**********同时计算程序执行时间***********
**********www.knowsky.com***********
****************************************/
//定义获取时间函数
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
?>
$time_start = getmicrotime();
include("db.inc.php");//连接数据库
$db=new testcsv;
?>
$handle = fopen ("test.csv","r");
$sql="insert into scores(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 " ";
echo $sql." ";
$db->query($sql);
echo "SQL语句执行成功! ";
$sql="insert into scores(idcard,names,num,sex,nation,score) values('";
}
fclose ($handle);
$time_end = getmicrotime();
$time = $time_end - $time_start;
echo "程序执行时间:".$time."秒";
?>
|
|
Copy code |
|
/*****************************************
**********Author: Chongxing/arcow******************
**********njj@nuc.edu.cn************************
**********php imports csv files into the database**********
**********Calculate program execution time at the same time************
**********www.knowsky.com************
****************************************/
//Define the time function
function getmicrotime(){
List($usec, $sec) = explode(" ",microtime());
Return ((float)$usec + (float)$sec);
}
?>
$time_start = getmicrotime();
include("db.inc.php");//Connect to the database
$db=new testcsv;
?>
$handle = fopen ("test.csv","r");
$sql="insert into scores(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 "
";
echo $sql."
";
$db->query($sql);
echo "SQL statement executed successfully!
";
$sql="insert into scores(idcard,names,num,sex,nation,score) values('";
}
fclose ($handle);
$time_end = getmicrotime();
$time = $time_end - $time_start;
echo "Program execution time:".$time."seconds";
?>
http://www.bkjia.com/PHPjc/630709.html
www.bkjia.comhttp: //www.bkjia.com/PHPjc/630709.htmlTechArticleSometimes when writing a program, the background requires importing a large amount of data into the database, such as querying computer test scores and phone book data. etc. are usually stored in excel. At this time, we can put the data...