zoukankan      html  css  js  c++  java
  • TP5导入EXCEL到数据库

    前期准备工作:

    1.下载PHPExcel放到vendor下

     2.前端页面:

      <form action="save" method="post" enctype="multipart/form-data">
                <div class="time-add clearfix">
                    <input type="submit" disabled name="submit" class="submit" value="提交" />
                    <a class="dianji" href="javascript:;">
                        <input type="file" name="file" id="fileupload" class="inputfile" style="position: absolute;display: none;"/>
                        <label class="span" for="fileupload">批量导入用餐记录</label>
                    </a>
                </div>
            </form>

    3.后端代码

    public function save(){
    
            //设置文件上传的最大限制
            ini_set('memory_limit','1024M');
            //加载第三方类文件
            vendor("PHPExcel.PHPExcel");
            //防止乱码
            header("Content-type:text/html;charset=utf-8");
            //实例化主文件
            //接收前台传过来的execl文件
            $file = $_FILES['file'];
            //截取文件的后缀名,转化成小写
            $extension = strtolower(pathinfo($file['name'],PATHINFO_EXTENSION));
            if($extension == "xlsx"){
                //2007(相当于是打开接收的这个excel)
                $objReader =PHPExcel_IOFactory::createReader('Excel2007');
            }else{
                //2003(相当于是打开接收的这个excel)
                $objReader = PHPExcel_IOFactory::createReader('Excel5');
            }
    
            $objContent = $objReader -> load($file['tmp_name']);
    
            if ($objContent){
                $sheetContent = $objContent -> getSheet(0) -> toArray();
                //删除第一行标题
                unset($sheetContent[0]);
                $time= $mothtime= strtotime(date("Y-m-d H:i:s", strtotime("-1 month")));
                foreach ($sheetContent as $k => $v){
                    $arr['name'] = $v[1];
                    $arr['card_number'] = $v[2];
                    $arr['department_name'] = $v[3];
                    $arr['breakfast'] = $v[4];
                    $arr['lunch'] = $v[5];
                    $arr['dinner'] = $v[6];
                    $arr['supper'] = $v[7];
                    $arr['total'] = $v[8];
                    $arr['create_time'] = $time;
                    $res[] = $arr;
                }
                //删除最后一行汇总
                array_pop($res);
    
                $re = Db::name('dining')
                    ->insertAll($res);
                if($re){
                    $this->success('导入成功 !');
                }else{
                    $this->error('导入失败 !');
                }
            }else{
                $this->error('请导入表格 !');
            }
        }
    人生得意须尽欢,莫使金樽空对月.
  • 相关阅读:
    Linux ifconfig 命令
    linux sed命令就是这么简单
    让博客园博客自动生成章节目录索引
    linux中cat、more、less命令区别详解
    Linux yum源搭建及配置
    关于java中位运算的左移、右移、无符号右移
    一个老话题,short s=s+1的日常
    C语言移位运算符
    关于异或的一些东西和应用
    指针就算指向了常量也不能修改这个常量
  • 原文地址:https://www.cnblogs.com/luojie-/p/12075880.html
Copyright © 2011-2022 走看看