laravel引入第三方类(phpexcel实现excel导入数据库)

    科技2022-08-14  120

    第一步:框架要求满足相应基础条件

    laravel版本5.+

    第二步:执行如下命令安装依赖及扩展:

    composer require maatwebsite/excel ~2.1.0

    完成后所需要的phpexcel的类在vendor中

    接口代码如下

    public function export(Request $request) { $tmp_file = $_FILES['file']['tmp_name']; $file_types =explode ( ".", $_FILES ['file'] ['name'] ); $file_type =$file_types [count ( $file_types ) - 1]; /*判别是不是.xls文件,判别是不是excel文件*/ if (strtolower( $file_type ) != "xls" && strtolower( $file_type ) != "xlsx") { return $this->resultHandler('不是excel文件 重新上传'); } $savePath ="./excel/"; /*以时间来命名上传的文件*/ $str =date('Ymdhis'); $file_name =$str . "." . $file_type; $request->file('file')->move($savePath, $file_name); $fullpath =$savePath.$file_name; //引用PHPexcel 类 $objPHPExcel = new \PHPExcel(); $type = 'Excel2007';//设置为Excel5代表支持2003或以下版本,Excel2007代表2007版 $xlsReader = \PHPExcel_IOFactory::createReader($type); $xlsReader->setReadDataOnly(true); $xlsReader->setLoadSheetsOnly(true); $Sheets = $xlsReader->load($fullpath); //开始读取上传到服务器中的Excel文件,返回一个二维数组 $dataArray = $Sheets->getSheet(0)->toArray(); unset($dataArray[0]); foreach($dataArray as $k=>$v){ $newArr = ['userid'=>$v[0],'name'=>$v[1]]; } var_dump($newArr); }

     

    Processed: 0.010, SQL: 8