PHPExcel数据导出到Excel文件

/**
     * 数据导出到Excel文件
     *
     * @param object $data 要导出的数据内容
     * @param object $headArr 设置Excel的头名称
     * @param string $fileName 导出的文件名称
     * @param string $width 设置单元格的宽度
     *
     * @throws PHPExcel_Exception 异常控制
     * @throws PHPExcel_Reader_Exception 控制Excel加载时的异常
     * @throws PHPExcel_Writer_Exception 控制Excel写入时的异常
     * @return bool
     */
    public function outPutExcel($data, $headArr, $fileName, $width = ‘30‘)
    {
        //如果没有数据返回false
        if (empty($data) || !is_array($data)) {
            return false;
        }
        //设置今天日期以便给Excel文件命名
        $date = date("Y_m_d", time());
        $fileName .= "_{$date}.xlsx";

        //实例化PHPExcel对象
        $objPHPExcel = new PHPExcel();

        //设置表头
        $index = ord("A");

        $objActSheet = $objPHPExcel->getActiveSheet();
        //生成表头
        foreach ($headArr as $value) {
            $columnHeader = chr($index);
            $objPHPExcel->setActiveSheetIndex(0)->setCellValue($columnHeader . ‘1‘, $value);
            $objActSheet->getColumnDimension($columnHeader)->setWidth($width);
            $index += 1;
        }

        $columnData = 2;
        foreach ($data as $key => $rows) {
            $span = ord("A");
            foreach ($rows as $keyName => $value) {
                // 列写入
                $j = chr($span);
                $objActSheet->setCellValue($j . $columnData, $value);
                $span++;
            }
            $columnData++;
        }

        //编码转换
        $fileName = iconv("utf-8", "gbk", $fileName);

        //设置活动单指数到第一个表,所以Excel打开这是第一个表
        $objPHPExcel->setActiveSheetIndex(0);

        //将输出重定向到一个客户端web浏览器(Excel2007)
        header(‘Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet‘);
        header("Content-Disposition: attachment; filename=\"$fileName\"");
        header(‘Cache-Control: max-age=0‘);
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, ‘Excel2007‘);
        $objWriter->save(‘php://output‘); //文件通过浏览器下载
        return true;
    }

  

原文地址:https://www.cnblogs.com/yeshaoxiang/p/9210590.html

时间: 2024-10-26 10:47:08

PHPExcel数据导出到Excel文件的相关文章

使用原生php将数据库数据导出到excel文件中

最近在工作中遇到一个需求,需要将数据库中的数据导出到excel文件中,并下载excel文件.因为以前没做过,所以就百度了一下, 网上说的大多是使用PHPExcel类来操作excel文件,这还要去下载这个类才能使用,而我只想使用原生的php,不想那么麻烦,好在 也有网友说到关于原生php生成excel文件的方法,其实很简单,下面把我结合网上资料自己实践的代码分享一下. 一般我们这种导数据的操作都是通过用户在网页页面上点击某个按钮触发相应js方法,然后请求php接口来实现的,所以主要有两种 方法来完

数据导出至Excel文件--好库编程网http://code1.okbase.net/codefile/SerializeHelper.cs_2012122018724_118.htm

using System; using System.IO; using System.Data; using System.Collections; using System.Data.OleDb; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; /// <summary> /// Excel操作类 /// </summary> /// Microsoft Excel 11.0 Obj

Qt中将QTableView中的数据导出为Excel文件

如果你在做一个报表类的程序,可能将内容导出为Excel文件是一项必须的功能.之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件.在使用了QtSql模块后,我很容易的将这个类改写应用在Qt程序中.类的名字叫“ExportExcelObject”.使用起来很简单: [cpp] view plaincopy // 1. declare an object // – fileName Excel 文件路径 // – sheetName Excel 工作表(sheet)名称 /

C#创建Excel文件并将数据导出到Excel文件

C#创建Excel文件,这里实际上是从资源中提取一个事先创建好的Excel文件,文件提取成功后,使用OleDb方法连接Excel,向Excel文件中写入数据. 创建解决方案 菜单>新建>项目>Windows窗体应用程序: 添加相关组件: 添加两个DataGridView,一个TextBox,两个按钮 ,如下图: 添加Excel资源: 先在文件夹中新建一个Excel文件,在Sheet1表的第一行设置列名: 双击"Resources.resx"文件打开资源文件视图: 添加

JavaScript将网页表格数据导出为Excel文件

不使用服务器端的技术,直接使用js将网页中的表格数据导出为excel文件,支持所有浏览器:前提条件是:网页中的表格数据必须使用table标签排版且不能有任何错误. <!DOCTYPE HTML> <html> <head> <title>javascript exportExcel</title> </head> <body> <table id="name" border="1&quo

实现excel导入导出功能,excel导入数据到页面中,页面数据导出生成excel文件

今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多都是以json数据填充的.在导入excel填充json数据到页面时,真的让我差点吐血了.在做这个导入导出的时候,那一个礼拜都是黑暗的. 好了,废话不多说了,我今天就给大家展示这个两个功能的核心点,excel生成json数据和json数据生成excel文件. 一:从上传文件到服务器,后台java解析,

java数据导出成Excel文件

HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("综合信息");HSSFRow row = sheet.createRow(0);HSSFCell c0 = row.createCell(0);//设置格式HSSFCellStyle cellStyle = workbook.createCellStyle();HSSFFont font = workbook.creat

使用PHPExcel类库将数据导出为excel文档

下载PHPExcel类库,http://phpexcel.codeplex.com/,解压后在Class中找到PHPExcel文件夹和PHPExcel.php文件,拷贝到自己的项目代码中,以下是导出为excel文件的方法 <?php function export_data() { require_once('PHPExcel.php'); // 文档名称 $filename = 'filename'; // 创建 PHPExcel 对象 $objPHPExcel = new PHPExcel(

使用PHPExcel将数据导出至Excel

安装类库 从GitHub上下载PHPExcel类库 地址:https://github.com/PHPOffice/PHPExcel 解压后将Classes文件夹移动到ThinkPHP的extend目录,并将其重命名为phpexcel 在项目中需要的地方添加引用 import('phpexcel.PHPExcel', EXTEND_PATH); 代码实现 <?php namespace app\index\controller; use think\Controller; class Excel