PHPExcel表格導入實現思路:首先需要將excel表格上傳至服務器--->將上傳至服務器的表格數據轉換成數組--->將數組數據添加到數據庫即可。
具體操作流程:
1. 首先需要去http://phpexcel.codeplex.com/ 下載PHPExcel壓縮包。

2.將Classes文件夾改PHPExcel(這個文件夾看個人喜好命名)放到自己的項目中。

3.準備前端界面上傳excel文件。
~~~
<form action="<?=url('import_list')?>" enctype="multipart/form-data" method="post" class="js_form">
<input type="file" name="file" /> <br>
<input type="submit" value="上傳" />
</form>
~~~
4.后臺接收上傳文件并移到指定目錄。
~~~
public function import_list(){
if(request()->isPost()){
$file = request()->file('file');
// 移動到框架應用根目錄/public/uploads/ 目錄下
$info = $file->move(ROOT_PATH . 'public' . DS . 'excel');
if($info){
//獲取文件所在目錄名
$dz=ROOT_PATH . 'public' . DS .'excel/'.$info->getSaveName();
//加載PHPExcel類
vendor("PHPExcel.PHPExcel");
//實例化PHPExcel類(注意:實例化的時候前面需要加'\')
$objReader=new \PHPExcel_Reader_Excel5();
$objPHPExcel = $objReader->load($dz,$encode='utf-8');//獲取excel文件
$sheet = $objPHPExcel->getSheet(0); //激活當前的表
$highestRow = $sheet->getHighestRow(); // 取得總行數
$highestColumn = $sheet->getHighestColumn(); // 取得總列數
$a=0;
for($i=2;$i<=$highestRow;$i++)
{
//將表格里面的數據循環到數組中
$data[$a]['name'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();
$data[$a]['phone'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
$data[$a]['money'] = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
$data[$a]['province'] = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
$data[$a]['city'] = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue();
$data[$a]['sr'] = $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue();
$data[$a]['sq'] = $objPHPExcel->getActiveSheet()->getCell("G".$i)->getValue();
$data[$a]['card'] = $objPHPExcel->getActiveSheet()->getCell("H".$i)->getValue();
$data[$a]['loan'] = $objPHPExcel->getActiveSheet()->getCell("I".$i)->getValue();
$data[$a]['car'] = $objPHPExcel->getActiveSheet()->getCell("J".$i)->getValue();
$data[$a]['house'] = $objPHPExcel->getActiveSheet()->getCell("K".$i)->getValue();
$data[$a]['safe'] = $objPHPExcel->getActiveSheet()->getCell("L".$i)->getValue();
$data[$a]['fund'] = $objPHPExcel->getActiveSheet()->getCell("M".$i)->getValue();
$a++;
}
//往數據庫添加數據
$res = db('apply')->insertAll($data);
$this->success('操作成功!');
}else{
// 上傳失敗獲取錯誤信息
$this->error($file->getError());
}
}
return view();
}
~~~
添加成功后數據就導入到數據庫里面了。