zoukankan      html  css  js  c++  java
  • laravel 导出

    常规导出xlsx  更多的是导出小数据  需要大数据导出的时候 需要临时更改内存大小  ini_set('memory_limit', '1024M');  不更改内存的情况 可以选择队列导出到服务器后另行下载;

    导出csv 由于一般浏览器都是默认解析输出模式  所以一般加header头

    这里说两种:

    1/ 

      

      use Illuminate\Support\Facades\Response;
      $data = [1,2,3,4];
            $headers = array(
                "Access-Control-Expose-Headers" => "Content-Disposition"
            );
         
            $filename = storage_path('attend_member_list.csv');
            $output = fopen($filename, 'w+');

             foreach ($data as $line) {
                 fputcsv($output, $line);
             }

            return Response::download($filename, '参与列表.csv', $headers);
     
    2/ 
      use Maatwebsite\Excel\Facades\Excel;
            $header = [];
            $excelData =[];
            $headers = array(
                "Access-Control-Expose-Headers" => "Content-Disposition"
            );
            return Excel::download((new ExcelExport($excelData->toArray(), $header)), '参与列表.csv', null, $headers);
     
    new ExcelExport 是创建导出类库
    <?php

    namespace App\Exports;


    use Maatwebsite\Excel\Concerns\FromCollection;
    use Maatwebsite\Excel\Concerns\Exportable;
    use Maatwebsite\Excel\Concerns\WithHeadings;
    class ExcelExport implements FromCollection, WithHeadings
    {
        use Exportable;

        private $data;
        private $headings;

        //数据注入
        public function __construct($data, $headings)
        {
            $this->data = $data;
            $this->headings = $headings;
        }

        //实现FromCollection接口
        public function collection()
        {
            return collect($this->data);
        }

        //实现WithHeadings接口
        public function headings(): array
        {
            return $this->headings;
        }
    }
    让每一滴智慧绘制成一条不归路!
  • 相关阅读:
    linux中和salt中的fqdn测试小节
    centos7离线安装rpm包自动解决依赖
    (转)mysql创建表时反引号的作用
    mysql更新一个表里的字段等于另一个表某字段的值
    Navicat permium工具连接Oracle的配置
    IA64与x64的区别
    vsphere和vmware快照的不足之处
    mysql查看某库表大小
    sql之left join、right join、inner join的区别(转)
    读锁和写锁
  • 原文地址:https://www.cnblogs.com/JdsyJ/p/15747590.html
Copyright © 2011-2022 走看看