第一步:框架要求满足相应基础条件
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);
}