这篇文章主要介绍了关于如何利用PHP导入Excel数据到数据库,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
/** * 导入excel * @throws \PHPExcel_Exception * @throws \PHPExcel_Reader_Exception */ public function impExcel($filename,$data){ if (!empty($_FILES)) { $config = array( 'exts'=>array('xlsx','xls'), 'rootPath'=>"./", 'savePath'=> "Public/Uploads/$filename/", 'subName' => array('date','Ymd'), ); $upload = new \Think\Upload($config); if (!$info=$upload->upload()) { $this->error($upload->getError()); } vendor("PHPExcel.PHPExcel"); $file_name = $info['excel']['savepath'].$info['excel']['savename']; //$objReader = \PHPExcel_IOFactory::createReader('Excel5'); $Excel_name = getcwd() . '/' .$file_name; //$aaa = is_readable($Excel_name); // $objPHPExcel = $objReader->load($Excel_name,$encode='utf-8'); $extension = strtolower( pathinfo($Excel_name, PATHINFO_EXTENSION) ); if ($extension =='xlsx') { $objReader = new \PHPExcel_Reader_Excel2007(); $objPHPExcel = $objReader ->load($Excel_name); } else if ($extension =='xls') { $objReader = new \PHPExcel_Reader_Excel5(); $objPHPExcel = $objReader ->load($Excel_name); } else if ($extension=='csv') { $PHPReader = new \PHPExcel_Reader_CSV(); //默认输入字符集 $PHPReader->setInputEncoding('GBK'); //默认的分隔符 $PHPReader->setDelimiter(','); //载入文件 $objPHPExcel = $PHPReader->load($Excel_name); } $sheet = $objPHPExcel->getSheet(0); $highestRow = $sheet->getHighestRow(); // 取得总行数 $highestColumn = $sheet->getHighestColumn(); // 取得总列数 for($i=2;$i<=$highestRow;$i++) { $data['name'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue(); $data['tel'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue(); $data['zjh'] = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue(); $data['sheng'] = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue(); $data['shi'] = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue(); $data['address']= $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue(); $data['money']= $objPHPExcel->getActiveSheet()->getCell("G".$i)->getValue(); $data['hk_time']= $objPHPExcel->getActiveSheet()->getCell("H".$i)->getValue(); $data['nanyi']= $objPHPExcel->getActiveSheet()->getCell("I".$i)->getValue(); $data['uid'] = $_SESSION['user']['id']; $data['time'] = date("Y-m-d H:i:s"); M('release')->add($data); } $this->success('导入成功!');exit(); }else { $this->error("请选择上传的文件"); } }
调用:
if(IS_POST) { $data['reason'] = I("post.reason","","trim"); $data['type'] = I("post.type","","trim"); // $data['qixian'] = I("post.qixian","","trim"); // $data['comm'] = I("post.comm","","trim"); if(!empty($_FILES)){ $this->impExcel('batch_release',$data); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
Atas ialah kandungan terperinci 如何利用PHP导入Excel数据到数据库. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!