thinkphp+phpexcel导入表格将数据存到数据库中

PHPExcel下载地址 https://github.com/PHPOffice/PHPExcel

将下载下来PHPExcel中的Classes里的文件复制到项目里(这个博主放到了vender目录中并重新起名PHPExcel)
在这里插入图片描述
在这里插入图片描述
直接上代码

<button type="button" class="layui-btn" id="importExcel" style="float: right" ><i class="layui-icon"></i>导入Excel</button>
 //导入excel
 var uploadInst = upload.render({
      elem: '#importExcel'
      ,url: "" //接口地址
      ,accept: 'file' //普通文件
      ,exts: 'csv|xlsx|xls'
      ,before: function(obj){
          layer.msg('表格导入中...', {
              icon: 16,
              shade: 0.01,
              time: 0
          })
      }
      ,done: function(res){
          layer.msg(res.msg,{time:1500},function () {
              if(res.code ==1){
                  table.reload('LAY-user-manage');
              }
          })
      }

  });

后台代码

public function importExcel(){
  	$file = $this->request->file('file');
   // 移动到框架应用根目录/public/uploads/ 目录下
   $info = $file->move(ROOT_PATH . 'public' . DS . 'upload' . DS . 'excel');
   if ($info) {
       $path = ROOT_PATH . 'public' . DS . 'upload' . DS . 'excel/' . $info->getSaveName();
       vendor('PHPExcel.PHPExcel');
       $extension = $info->getExtension();
       if ($extension == 'xlsx') {
           $objReader = new \PHPExcel_Reader_Excel2007();
       } else {
           $objReader = new \PHPExcel_Reader_Excel5();
       }
       $objPHPExcel = $objReader->load($path, $encode = 'utf-8');//获取excel文件
       $sheet = $objPHPExcel->getSheet(0); //激活当前的表
       $highestRow = $sheet->getHighestRow(); // 取得总行数
       $highestColumn = $sheet->getHighestColumn(); // 取得总列数
       $data = array();
       $a = 0;
       for($i=2;$i<=$highestRow;$i++){
		  //读取表中内容
          $data[$a]['nickname'] = $sheet->getCell("A".$i)->getValue();
          $data[$a]['mobile'] = $sheet->getCell("B".$i)->getValue();
          $a++;
       }
       $status = Db::name('users')->insertAll($data);
       if ($status) {
           return json(['code' => 1, 'msg' => '导入成功!']);
       } else {
           return json(['msg' => '导入失败!']);
       }
   }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值