TP5(layui)excel导入

TP5(layui)excel导入

内容导读

收集整理的这篇技术教程文章主要介绍了TP5(layui)excel导入,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2784字,纯文字阅读大概需要4分钟

内容图文

1.composer安装PHPExcel

下载安装composer

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

composer require phpoffice/phpexcel

注意:

1.运行可能会报错OpenSSL之类的 去php.ini中开启extension=php_openssl.dll扩展,去掉分号

2.还有可能出现 找不到匹配的包的错误,这是因为我本地用的phpstudy的nts版本,这个版本比较特殊同时支持apache和nginx,只是本地虚拟环境开发测试用的PHP版本,所以匹配不到,应该切换正常版本在运行命令安装

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:wampwwwbickpublic





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导入的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的TP5(layui)excel导入全部内容,希望文章能够帮你解决TP5(layui)excel导入所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com