思路一:使用xml文件保存Excel中列与数据表中字段对应关系,然后通过xml文件来添加数据思路二:Excel中第一行保存字段名,其他行保存数据思路三:将Excel中列与数据表中字段对应关系,用一个.php文件保存在此讲解的是思路二,使用的是PHPExcel
1.创建对象
$objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
2.指定excel文件
$objPHPExcel = $objReader->load($newFileName);
$sheet = $objPHPExcel->getSheet(0); //获取操作Excel中第一张表的数据
$highestRow = $sheet->getHighestRow(); // 取得总行数 返回是int类型
$highestColumn = $sheet->getHighestColumn(); // 取得总列数 返回是字母
$allFileds='';
$filedsSum='A'; //设置有效列的默认最大值
$dataInfo='';
$tidIndex=0;
for ($i='A';$i $curFiled=$sheet->getCell($i.'1')->getValue();
if(!empty($curFiled)){ //过滤无效的列
$filedsSum=$i;
$allFileds.=',`'.$curFiled.'`';
}
}
$inputDataSql=''; //插入sql语句
for($j=2; $j $inputData=array();
for ($i='A';$i$inputData[]='\''.$sheet->getCell($i.$j)->getValue().'\'';
//因为不确定该字段是否为string还是int类型,所以都加上''就不会出现错误
$inputDataSql.=',('.implode(',', $inputData).')';
}
$inputDataSql=substr($inputDataSql,1); //去掉最前面的一个','逗号
$sql='INSERT INTO ('.$allFileds.') VALUES '.$inputDataSql;最后调用相应的数据库操作对象,执行插入操作即可。
以上就介绍了php操作Excel文件,将Excel中数据导入到数据库,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。