Thinkpphp 5+PHPExcel 대량 업로드 표 데이터 기능 구현
2.전단 코드
<!DOCTYPE html>
<html>
<head>
<title> </title>
</head>
<body>
<form action="{:url('/index/index/importExcel')}" method="post" enctype="multipart/form-data">
<input type="file" name="myfile"><br/>
<input type="submit" value=" ">
</form>
</body>
</html>
3.배경 코드
/**
*
* ,
*/
public function importExcel(){
header("content-type:text/html;charset=utf-8");
// excel
$file = request()->file('myfile');
// /public/uploads/excel/
$info = $file->move(ROOT_PATH.'public'.DS.'uploads'.DS.'excel');
//
if ($info) {
// PHPExcel
vendor('PHPExcel.PHPExcel.Reader.Excel5');
//
$fileName = $info->getSaveName();
//
$filePath = 'public/uploads/excel/'.$fileName;
// PHPExcel
$PHPReader = new \PHPExcel_Reader_Excel5();
// excel
$objPHPExcel = $PHPReader->load($filePath);
// excel
$sheet = $objPHPExcel->getSheet(0);
$allRow = $sheet->getHighestRow(); //
//$allColumn = $sheet->getHighestColumn(); //
// ,
for ($j=2; $j <= $allRow; $j++) {
$data['name'] = $objPHPExcel->getActiveSheet()->getCell("A".$j)->getValue();
$data['tel'] = $objPHPExcel->getActiveSheet()->getCell("B".$j)->getValue();
$data['addr'] = $objPHPExcel->getActiveSheet()->getCell("C".$j)->getValue();
$last_id = Db::table('users')->insertGetId($data);// , id
if ($last_id) {
echo " ".$j." ,users :".$last_id." !<br/>";
}else{
echo " ".$j." !<br/>";
}
}
}else{
echo " !";
}
}
출력 결과:주의:
제3자 라 이브 러 리 를 도입 하여 vendor()를 사용 합 니 다.네 임 스페이스 형식 으로바 텀 코드 는"."를"/"로 자동 으로 바 꾸 기 때문에"/"를 사용 할 때"."로 대체 해 야 합 니 다.
상기 코드 는 직접 복사 해서 사용 할 수 있 지만 데이터베이스 관련 정 보 는 당신 의 것 으로 바 꿔 야 합 니 다!
총결산
위 에서 말 한 것 은 편집장 님 께 서 소개 해 주신 Thinkpphp 5+PHPExcel 대량 업로드 표 데이터 기능 입 니 다.여러분 께 도움 이 되 시 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.