TP5(layui)excel导入

互联网 19-7-23
1.composer安装PHPExcel

下载安装composer

其次 cmd切换到项目根目录 运行命令:

composer require phpoffice/phpexcel

注意:

2.前端代码

<div class="layui-form-item" > <label class="layui-form-label">导入专线</label> <div class="layui-input-inline"> <div class="layui-upload"> <button type="button" name="myfile" class="layui-btn" id="myfile"><i class="layui-icon"></i>上传文件</button> </div> </div> </div>
<script type="text/javascript">     layui.use(['form','upload'],function(){         var form=layui.form;         var upload=layui.upload;         upload.render({ //允许上传的文件后缀             elem: '#myfile'             ,url: "{:url('Logisticscompany/inserline')}"             ,accept: 'file' //普通文件             ,exts: 'xls|excel|xlsx' //只允许上传压缩文件             ,done: function(res){                 if(res.code==1){                     layer.msg('上传成功,已解析数据',{icon:6});                     location.href="{:url('Logisticscompany/lists')}";                 }else{                     layer.msg('解析失败',{icon:5});                 }             }         });         form.on('submit(formsub)',function(data){             layer.msg('导入数据具体详情未协商确认,待确认后处理');             return false;         })     }) </script>

3.controller

  /**      * excel导入网点      */     public function  insert(){         if(request() -> isPost())         {             vendor("PHPExcel.PHPExcel"); //方法一             $objPHPExcel =new \PHPExcel();             //获取表单上传文件             $file = request()->file('file');             $info = $file->validate(['ext' => 'xlsx,xls'])->move(ROOT_PATH . 'public');  //上传验证后缀名,以及上传之后移动的地址  E:\wamp\www\bick\public             if($info)             {                 $exclePath = $info->getSaveName();  //获取文件名                 $file_name = ROOT_PATH . 'public' . DS . $exclePath;//上传文件的地址                 $file_types = explode ( ".", $_FILES ['file'] ['name'] );                 $file_type = $file_types [count ( $file_types ) - 1];                 if($file_type=='xls'){                     $objReader =\PHPExcel_IOFactory::createReader("Excel5");                 }                 else if($file_type=='xlsx'){                     $objReader =\PHPExcel_IOFactory::createReader("Excel2007");                 }                 $obj_PHPExcel =$objReader->load($file_name, $encode = 'utf-8');  //加载文件内容,编码utf-8                 $excel_array=$obj_PHPExcel->getSheet(0)->toArray();   //转换为数组格式                 array_shift($excel_array);  //删除第一个数组(标题);                 $data = [];                 $i=0;                 foreach($excel_array as $k=>$v) {                     $data[$k]['viewName'] = $v[0];                     $data[$k]['cityId'] = $v[1];                     $data[$k]['stationAddress'] = $v[2];                     $data[$k]['linkMan'] = $v[3];                     $data[$k]['linkPhone'] = $v[4];                     $data[$k]['longitude'] = $v[5];                     $data[$k]['latitude'] = $v[6];                     $data[$k]['userId'] = $v[7];                     $data[$k]['remark'] = $v[8];                     $i++;                 }                 $re=    Db::name("htt_freightstation")->insertAll($data);                 if($re){                     $msg=[                         'code'=>1,                         'msg'=>'已获取信息',                     ];                     return json_encode($msg);                 }                 else{                     $msg=[                         'code'=>0,                         'msg'=>'获取信息失败',                     ];                     return json_encode($msg);                 }             }else             {                 echo $file->getError();             }         }         return $this->fetch('lists');     }

以上就是TP5(layui)excel导入的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: layui
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:PHP中__isset()方法详解

相关资讯