利用PHPexcel将excel导入数据库
sanlanlan 2019-6-6 标签: PHP 浏览:978 评论:0
利用PHPexcel可以生成excel表格,同样的也可以利用PHPexcel将excel导入数据库
在项目中引入PHPExcel.php文件
require (dirname(__FILE__).'/../../Classes/PHPExcel.php'); //根据自己具体的路径
//$objReader = PHPExcel_IOFactory::createReader('Excel5');//excel 2003
$objReader = PHPExcel_IOFactory::createReader('Excel2007');//excel 2007
$objPHPExcel = $objReader->load($filename); //$filename 文件路径
$objPHPExcel = PHPExcel_IOFactory::load($uploadfile); //要是上面的load方法有问题的话,就用这个
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumn = $sheet->getHighestColumn(); // 取得总列数
(1)
//如果你的excel表格是已经知道是这样的格式
姓名 年龄 学号
张三 18 A100
李四 18 A101
王五 18 A102
可以这样操作:
for($r=2;$r<=$highestRow;$r++){
$a = $objPHPExcel->getActiveSheet()->getCell("A".$r)->getValue();//获取A列的值
$b = $objPHPExcel->getActiveSheet()->getCell("B".$r)->getValue();//获取B列的值
//接下来有了数据,就是数据库操作了
}
(2)
如果是不确定格式的:
for($r=2;$r<=$highestRow;$r++) {
for($c='A';$c<=$highestColumn;$c++) {
//$str .= iconv('utf-8','gbk',$objPHPExcel->getActiveSheet()->getCell("$c$r")->getValue()).'\\';
$str .= $objPHPExcel->getActiveSheet()->getCell("$c$r")->getValue().'||'; //这边有可能要考虑字符编码问题
}
$strs = explode("||",$str);
$sql ="INSERT INTO table (name,sex,number) VALUES ('".$strs[0]."','".$strs[1]."','".$strs[2]."')";
//接下来有了数据,就是数据库操作了
$str = '';
}
发表评论: