php导出excel表格的使用
网站后台有很多列表数据,常常都会有导出excel表格的需求,和大家分享一个实用的导出excel表格方法;
不多说,上代码;
/**
* @param array $data 要导出的数据
* @param array $title excel表格的表头
* @param string $filename 文件名
*/
public function daochu_excel($data=array(),$title=array(),$filename='报表'){//导出excel表格
//处理中文文件名
ob_end_clean();
Header('content-Type:application/vnd.ms-excel;charset=utf-8'); header("Content-Disposition:attachment;filename=export_data.xls");
//处理中文文件名
$ua = $_SERVER["HTTP_USER_AGENT"]; $encoded_filename = urlencode($filename);
$encoded_filename = str_replace("+", "%20", $encoded_filename);
if (preg_match("/MSIE/", $ua) || preg_match("/LCTE/", $ua) || $ua == 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko') {
header('Content-Disposition: attachment; filename="' . $encoded_filename . '.xls"');
}else {
header('Content-Disposition: attachment; filename="' . $filename . '.xls"');
}
header ( "Content-type:application/vnd.ms-excel" ); $html = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<meta http-equiv='Content-type' content='text/html;charset=UTF-8' />
<head> <title>".$filename."</title>
<style>
td{
text-align:center;
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
border:#1C7A80 1px solid;
color:#152122;
width:auto;
}
table,tr{
border-style:none;
}
.title{
background:#7DDCF0;
color:#FFFFFF;
font-weight:bold;
}
</style>
</head>
<body>
<table width='100%' border='1'>
<tr>";
foreach($title as $k=>$v){
$html .= " <td class='title' style='text-align:center;'>".$v."</td>";
} $html .= "</tr>"; foreach ($data as $key => $value) {
$html .= "<tr>";
foreach($value as $aa){
$html .= "<td>".$aa."</td>";
} $html .= "</tr>"; }
$html .= "</table></body></html>";
echo $html;
exit;
} $title参数的数据是一个一维数组,如下:

$data参数是一个二维数组,如下:

调用方法:
$daochuData = DB::table('scholarship_to_weixin as s')->leftJoin('users as u','s.uid','=','u.id')
->leftJoin('admin as a','a.id','=','s.tx_checkid')
->orderBy('s.times','desc')
->select('s.*','u.nickname','u.tel','u.id as u_id','a.name as a_name','u.admin_beizhu_name')
->get();
$title = array('序号','申请时间','申请人','备注名称','申请人手机号','提现金额','操作时间','操作人');
$arr = [];
foreach($daochuData as $k=>$v){
$arr[] = array(
$k+1,
$v->times,
$v->nickname,
$v->admin_beizhu_name,
$v->tel,
$v->money,
$v->s_times,
$v->a_name
);
}
$this->daochu_excel($arr,$title,'红包提现到微信记录');
结果:

希望对您有帮助。谢谢!
php导出excel表格的使用的更多相关文章
- PHP导入导出excel表格图片(转)
写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wp ...
- java中使用jxl导出Excel表格详细通用步骤
该方法一般接收两个参数,response和要导出的表格内容的list. 一般我们将数据库的数据查询出来在页面进行展示,根据用户需求,可能需要对页面数据进行导出. 此时只要将展示之前查询所得的数据放入s ...
- .NET环境下导出Excel表格的两种方式和导入两种类型的Excel表格
一.导出Excel表格的两种方式,其中两种方式指的是导出XML数据类型的Excel(即保存的时候可以只需要修改扩展名为.xls)和真正的Excel这两种. using System; using Sy ...
- java导出excel表格
java导出excel表格: 1.导入jar包 <dependency> <groupId>org.apache.poi</groupId> <artifac ...
- 使用NPOI将数据库里信息导出Excel表格并提示用户下载
使用NPOI进行导出Excel表格大家基本都会,我在网上却很少找到导出Excel表格并提示下载的 简单的代码如下 //mvc项目可以传多个id以逗号相隔的字符串 public ActionResult ...
- VB.NET版机房收费系统---导出Excel表格
datagridview,翻译成中文的意思是数据表格显示,使用DataGridView控件,能够显示和编辑来自不同类型的数据源的表格,将数据绑定到DataGridView控件很easy和直观,大多数情 ...
- C#导出Excel表格方法
using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; using NPOI.SS.Formula.Functions; using System.Re ...
- Java代码导入导出 Excel 表格最简单的方法
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStrea ...
- js导出Excel表格
js导出Excel表格 直接上代码: 红色部分:如果表格数据中有“1/1”这样的值,会在导出的Excel中转化为日期“1月1日”,所以才加上了红色那两句.如果返回值中没有这样的格式,红色部分可以不写. ...
- Spring Boot 导出Excel表格
Spring Boot 导出Excel表格 添加支持 <!--添加导入/出表格依赖--> <dependency> <groupId>org.apache.poi& ...
随机推荐
- 美化浏览器JSON格式
工具下载地址: https://github.com/weibanggang/JSON-handle 原始 优化后 直接将文件拖到浏览器即可
- 【题解】洛谷P2704 [NOI2001] 炮兵阵地(状压DP)
洛谷P2704:https://www.luogu.org/problemnew/show/P2704 思路 这道题一开始以为是什么基于状压的高端算法 没想到只是一道加了一行状态判断的状压DP而已 与 ...
- 极光IM简单接入步骤
最近生接触了一下android,尝试导入极光的demo到android study 各种错误,然后下载极光生成的项目也是各种错误,感觉好像有点脱离时代了,记得以前用eclipse写android只需要 ...
- Xcode7解决VVDocumenter 不能使用的方案
Xcode7解决VVDocumenter 不能使用的方案 VVDocumenter-Xcode是Xcode上一款快速添加标准注释,并可以自动生成文档的插件.有了VVDocumenter-Xcode,规 ...
- 20181029NOIP模拟赛T2
2.追捕 [题目背景] Duan2baka:“jmsyzsfq天下第一蠢!” jmsyzsfq:“你说什么?!” [题目描述] 于是Duan2baka开始了逃亡的旅程,而jmsyzsfq也开始追捕Du ...
- CF1066CBooks Queries(数组的特殊处理)
题意描述 您需要维护一个数据结构,支持以下三种操作: L id:在现在序列的左边插一个编号为id的物品 R id:在现在序列的右边插一个编号为id的物品 ? id:查询该点左面有几个元素,右面有几个元 ...
- 新人成长之入门Vue.js常用指令介绍(一)
写在前面 作为一个刚步入职场工作的新人,对于公司中所用的技术和框架基本上不懂,只能从最基础的开始做起,进入公司接触的第一个框架就是前端框架Vue.js,几个功能做下来,觉得Vue.js首先学习起来真的 ...
- vue 图片压缩 基于cli3 配置
chainWebpack: config => { const imagesRule = config.module.rule('images') imagesRule .use('image- ...
- [转]Visual C++ 和 C++ 有什么区别?
注:本篇内容转载与网络,方便自己学习,如有侵权请您联系我删除,谢谢. 有位同学问我“Visual C++和C++有什么区别?”,这的确是初学者会感到困惑的问题,比较常见.除此之外,还有“先学C++好, ...
- Redis系列化方式有哪些?哪个系列化性能最好?
Redis系列化方式有JDK系列化.JSON系列化.XML系列化等多种.我专门测试过,在我的笔记本电脑上保存5万条User对象到Redis,JDK系列化方式平均要15秒,JSON系列化方式只要13秒多 ...