这儿是导进excel2007的xlsx文件格式,假如是2003文件格式能够把excel2007换为Excel5,$excelpath就是你的excel相对路径。
$objReader=PHPExcel_IOFactory::createReader(excel2007);//useExcel5for2003format
$excelpath=myexcel.xlsx;
$objPHPExcel=$objReader- load($excelpath);
$sheet=$objPHPExcel- getSheet(0);
$highestRow=$sheet- getHighestRow();//获得总行数
$highestColumn=$sheet- getHighestColumn();//获得总列数
逐行循环系统载入excel,并添加隔开符。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for($j=2;$j =$highestRow;$j++)//从第二行刚开始载入数据信息
{
$str=;
for($k=A;$k =$highestColumn;$k++)//从A列载入数据信息
{
$str.=$objPHPExcel- getActiveSheet()- getCell($k$j)- getValue().*;//载入模块格
}
$str=mb_convert_encoding($str,GBK,auto);//依据自身编号改动
$strs=explode(*,$str);
//echo$str. br/
$sql=insertintotest(title,content,sn,num)values({$strs[0]},{$strs[1]},{$strs[2]},{$strs[3]});
//echo$sql;
if(!mysql_query($sql,$conn))
{
echoexcelerr;
}
}
数据信息库联接文档conn.php,依据自身数据信息库填好
?php
$conn=mysql_connect(localhost,root,123456) or die(数据信息库网络服务器联接不正确.mysql_error());
mysql_select_db(temp,$conn) or die(数据信息库浏览不正确.mysql_error());
mysql_query(set character set gb2312);
mysql_query(set names gb2312);
?
导进实际效果图
所有编码,注解一部分能够调节
?php include(conn.php); require_once ./; require_once ./PHPExcel/; require_once ./PHPExcel/PHPExcel/; $objReader = PHPExcel_IOFactory::createReader(excel2007); //use Excel5 for 2003 format $excelpath=myexcel.xlsx; $objPHPExcel = $objReader- load($excelpath); $sheet = $objPHPExcel- getSheet(0); $highestRow = $sheet- getHighestRow(); //获得总行数 $highestColumn = $sheet- getHighestColumn(); //获得总列数 for($j=2;$j =$highestRow;$j++) //从第二行刚开始载入数据信息 { $str=; for($k=A;$k =$highestColumn;$k++) //从A列载入数据信息 { $str .=$objPHPExcel- getActiveSheet()- getCell($k$j)- getValue().*;//载入模块格 } $str=mb_convert_encoding($str,GBK,auto);//依据自身编号改动 $strs = explode(*,$str); //echo $str . br / //exit; $sql = insert into test (title,content,sn,num) values ({$strs[0]},{$strs[1]},{$strs[2]},{$strs[3]}); //echo $sql; //exit; if(!mysql_query($sql,$conn)) { echo excel err; } } ? |