thinkphp3.2+PHPExcel导出查询数据到excel表格的实例
首先下载PHPExcel插件,我们需要把PHPExcel.php和PHPExcel文件夹放到D:\XAMPP\htdocs\fsxb\ThinkPHP\Library\Vendor\PHPExcel目录下,然后主题代码实现:
public function download(){
Vendor('PHPExcel.PHPExcel');
Vendor('PHPExcel.PHPExcel.Writer.Excel2007');
// 首先创建一个新的对象 PHPExcel object
$objPHPExcel = new \PHPExcel();
$objWriter = new \PHPExcel_Writer_Excel2007($objPHPExcel);
// 位置aaa *为下文代码位置提供锚
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '序号')
->setCellValue('B1', '商户姓名')
->setCellValue('C1', '商户名称')
->setCellValue('D1', '商户号')
->setCellValue('E1', '终端号')
->setCellValue('F1', '序列号')
->setCellValue('G1', '机型')
->setCellValue('H1', '代理商')
->setCellValue('I1', '手机号')
->setCellValue('J1', '人单时间');
$startTime=I('get.startTime');
$endTime=I('get.endTime');
$agent=I('get.agent');
$model=I('get.model');
$istrue=I('get.istrue')==0?0:1;
if ($startTime!=''&&$endTime!='') {
$str=$startTime.",".$endTime;
$where['time']=array('between',$str);
}
if ($agent!='') {
$where['agent']=$agent;
}
if ($model!='') {
$where['model']=$model;
}
if ($istrue==1) {
$where['istrue']=$istrue;
}
$data=M('consumer')->where($where)->select();
if ($data)
{
$count=1;
foreach($data as $v)
{
$count+=1;
$l1="A"."$count";
$l2="B"."$count";
$l3="C"."$count";
$l4="D"."$count";
$l5="E"."$count";
$l6="F"."$count";
$l7="G"."$count";
$l8="H"."$count";
$l9="I"."$count";
$l10="J"."$count";
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($l1, $v['id'])
->setCellValue($l2, $v['cname'])
->setCellValue($l3, $v['mname'])
->setCellValue($l4, " ".$v['cnumber'])
->setCellValue($l5, $v['tnumber'])
->setCellValue($l6, $v['snumber'])
->setCellValue($l7, $v['model'])
->setCellValue($l8, $v['agent'])
->setCellValue($l9, $v['phone'])
->setCellValue($l10, $v['time']);
}
}
//得到当前活动的表,注意下文教程中会经常用到$objActSheet
$objActSheet = $objPHPExcel->getActiveSheet();
// 位置bbb *为下文代码位置提供锚
// 给当前活动的表设置名称
$objActSheet->setTitle('list');
// 生成2007excel格式的xlsx文件
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition:inline;filename='consumer.xlsx");
header("Content-Transfer-Encoding: binary");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
$objWriter->save('php://output');
exit;
}
thinkphp3.2+PHPExcel导出查询数据到excel表格的实例的更多相关文章
- PHP导出大量数据到excel表格
/** * @creator Jimmy * @data 2016/8/22 * @desc 数据导出到excel(csv文件) * @param $filename 导出的csv文件名称 如date ...
- vue element 导出 分页数据的excel表格
1.安装相关依赖 npm install --save xlsx file-saver 2.导入相关插件 在组建头部导入相关插件 const FileSaver = require("fil ...
- Vue导出json数据到Excel表格
一.安装依赖 npm install file-saver --save npm install xlsx --save npm install script-loader --save-dev 二. ...
- PHP导出MySQL数据到Excel文件
PHP导出MySQL数据到Excel文件 转载 常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存 ...
- 导出数据到Excel表格
开发工具与关键技术:Visual Studio 和 ASP.NET.MVC,作者:陈鸿鹏撰写时间:2019年5月25日123下面是我们来学习的导出数据到Excel表格的总结首先在视图层写导出数据的点击 ...
- Java操作Jxl实现导出数据生成Excel表格数据文件
实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...
- .NET使用Office Open XML导出大量数据到 Excel
我相信很多人在做项目的都碰到过Excel数据导出的需求,我从最开始使用最原始的HTML拼接(将需要导出的数据拼接成TABLE标签)到后来happy的使用开源的NPOI, EPPlus等开源组件导出EX ...
- Python导出数据到Excel表格-NotImplementedError: formatting_info=True not yet implemented
在使用Python写入数据到Excel表格中时出现报错信息记录:“NotImplementedError: formatting_info=True not yet implemented” 报错分析 ...
- java 对excel操作 读取、写入、修改数据;导出数据库数据到excel
============前提加入jar包jxl.jar========================= // 从数据库导出数据到excel public List<Xskh> outPu ...
随机推荐
- java面试每日一题5
题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提 成,高于10万元的部分,可可提成7.5%:20万到40 ...
- c# 回调委托
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- Winform知识点
Winform窗体常用的控件 1.按钮 Button 前缀:btn 2.文本框 TextBox 前缀:txt 3.单选按钮 RadioButton 前缀:rdo 4.复选按钮 CheckBox 前缀: ...
- hdu 3123
GCC Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submi ...
- Codeforces Round #260 (Div. 2) C
Description Alex doesn't like boredom. That's why whenever he gets bored, he comes up with games. On ...
- Android中直播视频技术探究之---视频直播服务端环境搭建(Nginx+RTMP)
一.前言 前面介绍了Android中视频直播中的一个重要类ByteBuffer,不了解的同学可以 点击查看 到这里开始,我们开始动手开发了,因为我们后续肯定是需要直播视频功能,然后把视频推流到服务端, ...
- Radar之字节流加载图片
获取GUITexture GameObject _obj = GameObject.Find("Tex1"); GUITexture _tex = _obj.GetComponen ...
- Undefined symbols for architectureIOS
IOS问题解决. 现在进行老项目的编译,发现不能编译. 经过各种盲目查询,找个几个方案. 1.builde setting修改编译方式. 2.Builde Phases(修改). 2.1.库. 2.1 ...
- ListableBeanFactory
ListableBeanFactory public interface ListableBeanFactory extends BeanFactory 该接口中定义了可以获取配置中所有bean的信息 ...
- C# this.invoke()作用 多线程操作UI
Invoke()的作用是:在应用程序的主线程上执行指定的委托.一般应用:在辅助线程中修改UI线程( 主线程 )中对象的属性时,调用this.Invoke(); //测试的窗体 public class ...