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

      /**
         * @DESC 数据导出
         * @notice max column is z OR 26,overiload will be ignored
         * @notice
         * @example
         *  $data = [[1, "小明", "25"]];
         *  $header = ["id", "姓名", "年龄"];
         *  Myhelpers::exportData($data, $header);
         * @return void, Browser direct output
         */
        public static function exportData($data, $header, $title = "test", $filename = "data")
        {
            if (!is_array($data) || !is_array($header)) return false;
            $objPHPExcel = new PHPExcel();
    
            // Set properties
            $objPHPExcel->getProperties()->setCreator("Maarten Balliauw");
            $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");
            $objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
            $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
            $objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
            // Add some data
            $obj = $objPHPExcel->setActiveSheetIndex(0);
            //添加头部
            $hk = 0;
            foreach ($header as $k => $v) {
                $colum = PHPExcel_Cell::stringFromColumnIndex($hk);
                $obj->setCellValue($colum . "1", $v);
                $hk += 1;
            }
            $column = 2;
            $objActSheet = $objPHPExcel->getActiveSheet();
            foreach ($data as $key => $rows)  //行写入
            {
                $span = 0;
                foreach ($rows as $keyName => $value) // 列写入
                {
                    $j = PHPExcel_Cell::stringFromColumnIndex($span);
                    // 前面加一个空格 会将值变成字符串
                    $objActSheet->setCellValue($j . $column, ' '.$value);
                    $span++;
                }
                $column++;
            }
            // Rename sheet
            if ($title) {
                $objActSheet->setTitle($title);
            }
            // Save
            $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
            header("Pragma:public");
    //        header('Content-type: application/vnd.ms-excel');
            header("Content-Type:application/vnd.ms-excel;name="{$filename}.xlsx"");
    //        header("Content-Type:application/x-msexecl;name="{$filename}.xls"");
            header("Content-Disposition:inline;filename="{$filename}.xlsx"");
            $objWriter->save("php://output");
        }
  • 相关阅读:
    Linux内核(5)
    Linux内核(4)
    Linux内核(3)
    Linux内核(2)
    Linux内核(1)
    Linux时间子系统(十七) ARM generic timer驱动代码分析
    Linux时间子系统(十六) clockevent
    Linux时间子系统(十五) clocksource
    Linux时间子系统(十四) tick broadcast framework
    Linux时间子系统(十三) Tick Device layer综述
  • 原文地址:https://www.cnblogs.com/lglblogadd/p/7442943.html
Copyright © 2011-2022 走看看