PHP生成excel表格文件并下载
本文引自网络,仅供自己学习之用。
利用php导出excel我们大多会直接生成.xls文件,这种方便快捷。
- function createtable($list,$filename){
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:filename=".$filename.".xls");
- $strexport="编号\t姓名\t性别\t年龄\r";
- foreach ($list as $row){
- $strexport.=$row['id']."\t";
- $strexport.=$row['username']."\t";
- $strexport.=$row['sex']."\t";
- $strexport.=$row['age']."\r";
- }
- $strexport=iconv('UTF-8',"GB2312//IGNORE",$strexport);
- exit($strexport);
- }
基于这个我们可以将方法封装一下:
- /**
- * 创建(导出)Excel数据表格
- * @param array $list 要导出的数组格式的数据
- * @param string $filename 导出的Excel表格数据表的文件名
- * @param array $header Excel表格的表头
- * @param array $index $list数组中与Excel表格表头$header中每个项目对应的字段的名字(key值)
- * 比如: $header = array('编号','姓名','性别','年龄');
- * $index = array('id','username','sex','age');
- * $list = array(array('id'=>1,'username'=>'YQJ','sex'=>'男','age'=>24));
- * @return [array] [数组]
- */
- protected function createtable($list,$filename,$header=array(),$index = array()){
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:filename=".$filename.".xls");
- $teble_header = implode("\t",$header);
- $strexport = $teble_header."\r";
- foreach ($list as $row){
- foreach($index as $val){
- $strexport.=$row[$val]."\t";
- }
- $strexport.="\r";
- }
- $strexport=iconv('UTF-8',"GB2312//IGNORE",$strexport);
- exit($strexport);
- }
方法调用:
- $filename = '提现记录'.date('YmdHis');
- $header = array('会员','编号','联系电话','开户名','开户行','申请金额','手续费','实际金额','申请时间');
- $index = array('username','vipnum','mobile','checkname','bank','money','handling_charge','real_money','applytime');
- $this->createtable($cash,$filename,$header,$index);
运行就可以得到表格:
这种方式生成Excel文件,生成速度很快,但是有缺点是:
1.单纯的生成Excel文件,生成的文件没有样式,单元格属性(填充色,宽度,高度,边框颜色...)不能自定义;
2.生成的文件虽然可以打开,但是兼容性很差,每次打开,都会报一个警告:
解决这个问题也不难,具体参见:使用PHPExcel实现Excel文件的导入和导出
PHP生成excel表格文件并下载的更多相关文章
- Java操作Jxl实现导出数据生成Excel表格数据文件
实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...
- php中读写excel表格文件示例。
测试环境:php5.6.24.这块没啥兼容问题. 需要更多栗子,请看PHPExcel的examples.还是蛮强大的. 读取excel文件. 第一步.下载开源的PHPExcel的类库文件,官方网站是h ...
- H5纯前端生成Excel表格
H5纯前端生成Excel表格方法如下: <!DOCTYPE html> <html> <head> <title></title> < ...
- Jmeter—生成excel结果文件
相信很多用jmeter进行接口测试的童鞋都会有这样的苦恼:同时执行上百条测试案例,如何能轻松加愉快地检查案例输出结果?仅仅靠jmeter的断言.debug sampler.察看结果树等是无法满足我们要 ...
- pyhton读取 excel表格文件
2019的第一天,忘记昨日之事,迎接新的明天. excel表格文件办公中常用,如通过Python操作这些数据需导入并有序读取这些数据 特随笔,供以后查阅 代码如下: import xlrd # fil ...
- JXL生成Excel,并提供下载(2:提供下载)
实现效果: 项目中使用JXL生成Excel,使生成的Excel可以让用户下载,如下图 一.生成Excel 二.提供下载 实现思路: 1.页面使用form表单提交方式(Ajax提交方式,我这里不行) 2 ...
- python读取Excel表格文件
python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1.安装Excel读取数据的库-----xlrd 直接pip install xlrd安 ...
- 详解python操作生成excel表格,并且填充数据
最近在研究python操作excel表格的问题,首先读取excel表格觉得平时用的多,不怎么有难度,就是pyhon生成excel表格的时候,平时不怎么用,所以重点研究了一下,现总结如下: 1.首先用到 ...
- 简单Excel表格上传下载,POI
一.废话 Excel表格是office软件中的一员,几乎是使用次数最多的办公软件.所以在java进行企业级应用开发的时候经常会用到对应的上传下载便利办公. 目前,比较常用的实现Java导入.导出Exc ...
随机推荐
- sqlserver 删除表中数据 id 从1开始
TRUNCATE TABLE TbName --TbName是表名 但如果TbName中某些字段与其它表有主外键关系,会报错: 无法截断表 'Plants',因为该表正由 FOREIGN KE ...
- IDEA中上传项目到GIt
一.先创建一个git仓库 二.然后在右键项目pull 三.add 最后提交: 完成
- 使用 ActiveMQ 实现JMS 异步调用
目录 简介 启动 ActiveMQ 服务器 查看控制台 ActiveMQ 的消息通道 Queue Topic 比较 开发生产者和消费者 开发服务端(消费者) 开发客户端(生产者) 参考 简介 服务之间 ...
- Codeforces787D(SummerTrainingDay06-D 线段树+最短路)
D. Legacy time limit per test:2 seconds memory limit per test:256 megabytes input:standard input out ...
- 解决ios10以上版本缩放问题
<script type="text/javascript"> /*解决ios10以上版本缩放问题 20171102*/ window.onload=function ...
- linux下lamp环境修改网站根目录
Apache默认的网站目录是在/var/www/html,我们现在要把网站目录更改成 /var/www 目录下,操作如下: 1.修改httpd,conf文件 vi /etc/httpd/conf/ht ...
- Ajax常见面试题 -- 前端面试题(二)
1:什么是ajax?ajax作用是什么? 异步的javascript和xml AJAX 是一种用于创建快速动态网页的技术. ajax用来与后台交互 2:原生js ajax请求有几个步骤?分别是什么 ...
- switch的用法
switch case 语句有如下规则: switch 语句中的变量类型可以是: byte.short.int 或者 char.从 Java SE 7 开始,switch 支持字符串 String 类 ...
- Flutter之搜索电影
搜索使用的是豆瓣电影API https://developers.douban.com/wiki/?title=movie_v2#subject 效果 代码: https://github.com/z ...
- android中checkbox自定义样式
1.首先res/drawable中定义checkbox_style.xml样式: <?xml version="1.0" encoding="utf-8" ...