您当前的位置:首页 > 建站知识 > 编程知识

ThinkPHP5使用PHPExcel导入Excel数据

发布时间: 2020-10-15 │ 浏览:3296 

假设你把excel文件上传到网站指定目录。

登录https://github.com/PHPOffice/PHPExcel下载最新版本的PHPExcel
解压后,把Classes文件夹命名为PHPExcel,然后复制到网站的extend文件夹里。

在ThinkPHP5控制器头部引入:
use think\Loader;
use PHPExcel;
use PHPExcel_IOFactory;
use PHPExcel_Cell;


读取代码为:
            Loader::import('PHPExcel.PHPExcel');
            Loader::import('PHPExcel.PHPExcel.PHPExcel_IOFactory');
            Loader::import('PHPExcel.PHPExcel.PHPExcel_Cell');
            //实例化PHPExcel
            $objPHPExcel = new \PHPExcel();
            $file = request()->file('excel');

            $exclePath = "data.xlsx";  //获取文件名
            $file_name = ROOT_PATH . 'public/uploads/' . DS . $exclePath;//上传文件的地址
            $objReader =\PHPExcel_IOFactory::createReader("Excel2007");
            $obj_PHPExcel =$objReader->load($file_name, $encode = 'utf-8');  //加载文件内容,编码utf-8
            $excel_array=$obj_PHPExcel->getSheet(0)->toArray();   //转换为数组格式

            var_dump($excel_array);//看一下是不是你上传的数据

            $i=0;
            foreach($excel_array as $k=>$v) {
                $member_name=$v[0];//0表示第一列单元的数据
                ......

                //具体的插入数据库的语句在这写
            }

核心代码就这么多,容易吧。
如果你用的是ThinkPHP6,则以上代码无效,请移步这里