header()实现PHP最简单的导出excel,不需要引入操作excel类库

最新的项目,因为涉及到资金,需要导出excel。先找到项目后台原本的导出功能,挺简陋的不满足项目要求,需要优化。它没有引入任何操作excel的类库,直接获取数据拼接,中间用iconv()函数将字符串从utf8编码转为gbk,然后echo打印出来,就变成导出excel。

然后我发现一句代码:

header("Content-Disposition: attachment; filename=refund_list.csv");

这里的refund_list.csv就是每次导出的excel文件名。参考到以前用PHP的下载头代码:

header("Content-type: text/plain");
header("Accept-Ranges: bytes");
header("Content-Disposition: attachment; filename=".$filename);
header("Cache-Control: must-revalidate, post-check=0, pre-check=0" );
header("Pragma: no-cache" );
header("Expires: 0" ); 
所以我猜代码中的这句header()代码也是类型下载头的代码,将PHP打印的数据转化为可下载的文件形式,然后通过“refund_list.csv”这里的后缀转化为excel。

为了证明我的猜测,我先百度了“Content-Disposition”,得到的结果:Content-Disposition为属性名

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用PHP可以通过以下步骤实现导出Excel的方法: 1. 引入PHPExcel类库,可以从官网下载最新版本的PHPExcel类库。 2. 创建一个空白的Excel文件,使用PHPExcel中的PHPExcel_IOFactory::createWriter方法将其保存为Excel文件格式。 3. 设置Excel文件的属性,如标题,表,样式等。 4. 遍历数据,将数据逐行写入Excel文件中。 5. 设置输出部信息,将Excel文件输出到浏览器或保存到服务器上。 下面是一个基本的PHP导出Excel的示例代码: ``` <?php // 引入PHPExcel类库 require_once 'PHPExcel/PHPExcel.php'; // 创建一个空白的Excel文件 $objPHPExcel = new PHPExcel(); $objPHPExcel->getProperties()->setTitle("Title"); // 设置表 $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A1', 'ID') ->setCellValue('B1', 'Name') ->setCellValue('C1', 'Email'); // 遍历数据,将数据逐行写入Excel文件中 $data = array( array('id' => 1, 'name' => 'Tom', 'email' => 'tom@example.com'), array('id' => 2, 'name' => 'Jack', 'email' => 'jack@example.com'), array('id' => 3, 'name' => 'Lucy', 'email' => 'lucy@example.com'), ); $row = 2; foreach ($data as $item) { $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A' . $row, $item['id']) ->setCellValue('B' . $row, $item['name']) ->setCellValue('C' . $row, $item['email']); $row++; } // 设置输出部信息,将Excel文件输出到浏览器或保存到服务器上 header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="filename.xls"'); header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); exit; ?> ``` 在实际开发中,我们可以根据实际需求来自定义Excel文件的内容和样式,以及输出方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值