ThinkPHP5.1导出excel表

Posted 大郎,起来喝药了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP5.1导出excel表相关的知识,希望对你有一定的参考价值。

ThinkPHP5.1导出excel表
注意,5.1版本禁用了Loader的内置规则
第一步:下载phpexcel拓展

composer require phpoffice/phpexcel

黄色警告不需要理会,下载完成后可以在框架的/vendor/phpoffice/phpexcel下查看

在这里插入图片描述

第二步:部署代码

use PHPExcel;
use PHPExcel_IOFactory;//引入两个类

function excel()
    {
        $data = session('data');//我的数据是存储在了Session里面,所以这里的获取数据
        $path = dirname(__FILE__);//找到当前脚本所在路径
        $PHPExcel = new \\PHPExcel();//实例化phpexcel
        $PHPSheet = $PHPExcel->getActiveSheet();
        $PHPSheet->setTitle("demo");//设置表内部名称
        $PHPSheet->setCellValue("A1", "ID")->setCellValue("B1", "订单编号")
            ->setCellValue("C1", "企业名称")
            ->setCellValue("D1", "企业邮箱")
            ->setCellValue("E1", "下单时间")
            ->setCellValue("F1", "购买套餐")
            ->setCellValue("G1", "金额");//表格数据
        $num=2;
        //数据
        foreach ($data as $k => $v) {
            $PHPSheet->setCellValue("A" . $num, $v['order_id']);
            $PHPSheet->setCellValue("B" . $num, $v['order_num']);
            $PHPSheet->setCellValue("C" . $num, $v['trade_name']);
            $PHPSheet->setCellValue("D" . $num, $v['trade_email']);
            $v['now_time']=date("Y-m-d H:i",$v['now_time']) ;
            $PHPSheet->setCellValue("E" . $num, $v['now_time']);
            $PHPSheet->setCellValue("F" . $num, $v['static_name']);
            $PHPSheet->setCellValue("G" . $num, $v['money']);
            $num++;
        }
        $PHPWriter = \\PHPExcel_IOFactory::createWriter($PHPExcel, "Excel2007");//创建生成的格式
        header('Content-Disposition: attachment;filename="表单数据.xlsx"');//下载下来的表格名
        header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
        $PHPWriter->save("php://output");//表示在$path路径下面生成demo.xlsx文件
    }

第三步:在html上面请求这个方法就可以实现导出并下载了

以上是关于ThinkPHP5.1导出excel表的主要内容,如果未能解决你的问题,请参考以下文章

使用While循环导出Excel

hutool工具导出excel代码示例

hutool工具导出excel代码示例

PB中如何将数据窗口中的数据导出成excel表,就是添加导出控件中的代码该如何编写!

保存文件对话框并导出到 Excel 工作表

将 sql 数据从数据透视表存储过程导出到 excel