分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

thinkphp的excel的导入导出

发布时间:2023-09-06 02:07责任编辑:彭小芳关键词:excelthinkphp
 ?1 public function upload() ?2 { ?3 //设置响应头 ?4 header("Contec-Type=text.html;charset=utf-8"); ?5 //实例化上传类 ?6 $upload=new \Think\Upload(); ?7 //设置上传附件大小 ?8 $$upload->maxSizae=20480000; ?9 //设置上传附件类型 10 $upload->exts=array(‘xls‘,xlsx); 11 //设置文件上传目录 12 $upload->savPath="/"; 13 //上传文件 14 $info=$upload->uploadOne($_FILES[‘file‘]); 15 $filename=‘/.Upload‘.$info[‘savepath‘].$info[‘savename‘]; 16 $exts=$info[‘ext‘]; 17 if(!$info) 18 { 19 //提示上传错误 20 $this->error($upload->getError); 21 ?22 } 23 else{ 24 //上传成功,开始导入 25 $this->dataImport($finame,$exts); 26 ?27 } 28 } 29 ?30 //这是导入函数 31 puhblic function dataImport($filename,$exts) 32 { 33 ?34 ?//导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入 35 ????????import("Org.Util.PHPExcel"); 36 ????????//创建PHPExcel对象,注意,不能少了\ 37 ????????$PHPExcel=new \PHPExcel(); 38 ????????//如果excel文件后缀名为.xls,导入这个类 39 ????????if($exts == ‘xls‘){ 40 ????????????import("Org.Util.PHPExcel.Reader.Excel5"); 41 ????????????$PHPReader=new \PHPExcel_Reader_Excel5(); 42 ????????}else if($exts == ‘xlsx‘){ 43 ???????????import("Org.Util.PHPExcel.Reader.Excel2007"); 44 ???????????$PHPReader=new \PHPExcel_Reader_Excel2007(); 45 ?46 ????//载入文件 47 ????????$PHPExcel=$PHPReader->load($filename); 48 ????????//获取表中的第一个工作表,如果要获取第二个,把0改为1,依次类推 49 ????????$currentSheet=$PHPExcel->getSheet(0); 50 ????????//获取总列数 51 ????????$allColumn=$currentSheet->getHighestColumn(); 52 ????????//获取总行数 53 ????????$allRow=$currentSheet->getHighestRow(); 54 ????????//循环获取表中的数据,$currentRow表示当前行,从哪行开始读取数据,索引值从0开始 55 ?????????56 ????????for($currentRow=3;$currentRow<=$allRow;$currentRow++){ 57 ????????????//从哪列开始,A表示第一列 58 ?????????????59 ????????????for($currentColumn=‘A‘;$currentColumn<=$allColumn;$currentColumn++){ 60 ????????????????//数据坐标 61 ????????????????$address=$currentColumn.$currentRow; 62 ????????????????//读取到的数据,保存到数组$arr中 63 ???????????????$data[$currentRow][$currentColumn]=$currentSheet->getCell($address)->getValue(); 64 ?????????????????65 ????????????} 66 ????????} 67 ????????$this->save_import($data); 68 ?69 } 70 ?71 //导入导数据库中 72 public function save_import($data) 73 { 74 //假设是某个数据库 75 $database=D(‘upload‘); 76 //用循环 77 foreach($data as $k=>$v) 78 { 79 //封装数据 80 $info[‘name‘]=$v[‘B‘]; 81 ????????????$info[‘age‘]=$v[‘C‘]; 82 ????????????$info[‘tel‘]=$v[‘E‘]; 83 ????????????$info[‘addr‘]=$v[‘F‘]; 84 ????????????$info[‘career‘]=$v[‘G‘]; 85 ????????????if($v[‘B‘]!=""&&$v[‘C‘]!=""&&$v[‘E‘]!=""&&$v[‘F‘]!=""&&$v[‘G‘]!="") 86 ????????????{ 87 ????????????$result=$d->where(array(‘tel‘=>$v[‘E‘]))->find(); 88 ?????????????89 ????????????if($result){ 90 ??????????????$res=$d->where(array(‘tel‘=>$v[‘E‘]))->save($info); 91 ????????????}else{ 92 ????????????????$res=$d->add($info); 93 ????????????} 94 ?95 ?96 } 97 ?98 ?99 100 }

thinkphp的excel的导入导出

原文地址:https://www.cnblogs.com/zjl10101314/p/9464043.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved