php 导出Excel

//导出excel的方法public function exportExcel($expTitle,$expCellName,$expTableData){$xlsTitle = iconv('utf-8', 'gb2312', $expTitle);//文件名称$fileName = "订单".date('_Y-m-d')."_".uniqid();//or $xlsTitle 文件名称可根据自己情况设定$cellNum = count($expCellName);$dataNum = count($expTableData);vendor("PHPExcel.PHPExcel");$objPHPExcel = new \PHPExcel();$cellName = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','AA','AB','AC','AD','AE','AF','AG','AH','AI','AJ','AK','AL','AM','AN','AO','AP','AQ','AR','AS','AT','AU','AV','AW','AX','AY','AZ');$objPHPExcel->getActiveSheet(0)->mergeCells('A1:'.$cellName[$cellNum-1].'1');//合并单元格// $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', $expTitle.'  Export time:'.date('Y-m-d H:i:s'));for($i=0;$i<$cellNum;$i++){$objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i].'2', $expCellName[$i][1]);}// Miscellaneous glyphs, UTF-8for($i=0;$i<$dataNum;$i++){for($j=0;$j<$cellNum;$j++){$objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j].($i+3), $expTableData[$i][$expCellName[$j][0]]);}}header('pragma:public');header('Content-type:application/vnd.ms-excel;charset=utf-8;name="'.$xlsTitle.'.xls"');header("Content-Disposition:attachment;filename=$fileName.xls");//attachment新窗口打印inline本窗口打印$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('php://output');exit;}/**** 导出Excel*/function export_datahandle(){//导出Excel$xlsName  = "User";$xlsCell  = array(array('ofid','账号序列'),array('ordernumber','订单号'),array('goods','商品'),array('consignee','收货人'),array('phone','电话'),array('address','地址'),array('coupontype','优惠券'),array('integral','积分'),array('qiaodou','俏豆'),array('paytype','支付方式'),array('price','总价格'),array('logistics','物流'),array('oddnum','物流单号'),array('freight','运费'),array('created_at','下单时间'),array('ofstate','状态'),array('ofproblem','问题'),);//实例化数据库if(input('ofstate') != 0){$whereArr_orderform['of.ofstate'] = input('ofstate');}elseif(input('ofproblem') != 0){$whereArr_orderform['of.ofproblem'] = input('ofproblem');}else{$whereArr_orderform = null;}$res = db('orderform')->alias('of')->join('qzb_user u','of.userid = u.uid')->join('qzb_coupon c','c.cid = of.coupon','left') // 优惠券->field('of.*,c.cid,c.cname,c.preferentialtype,u.uname') //c.preferentialtype 1是满减2是折扣->order('of.ofid desc')->where($whereArr_orderform)->select();if($res == null){$this->error('暂无数据可导出');return;}foreach ($res as $key => $value) {// 查询订单的商品$whereArr_a['ofc.orderformid'] = $value['ofid'];$orderformcontent_res = db('orderformcontent')->alias('ofc')->join('qzb_goods g','g.gid= ofc.goodsid','left') // 商品内容->field('g.gname,g.gid,g.gimg,g.price,ofc.num')->where($whereArr_a)->select();$goods_res = "";foreach ($orderformcontent_res as $k => $val) {$k_res = $k + 1;$goods_res = $goods_res.$k_res."#"."商品:".$val['gname']."单价:".$val['price']."数量:".$val['num']."/  ";}$value['goods'] = $orderformcontent_res;// 查询订单的收货人及地址$whereArr_addr['aid'] = $value['addressid'];$address_res = db('address')->field('*')->where($whereArr_addr)->find();$address_res['address'] = getregion_chs($address_res["province"],$address_res["city"],$address_res["county"]);$value['address'] = $address_res;// 优惠券类别$value['coupontype'] = "";if($value['preferentialtype'] == 1){$value['coupontype'] = "满减";}elseif($value['preferentialtype'] == 2){$value['coupontype'] = "折扣";}// 支付方式if($value['paytype'] == 1){$value['paytype'] = "微信支付";}elseif($value['paytype'] == 2){$value['paytype'] = "支付宝支付";}// 状态if($value['ofstate'] == 1){$value['ofstate'] = "未支付";}elseif($value['ofstate'] == 2){$value['ofstate'] = "已支付/待发货";}elseif($value['ofstate'] == 3){$value['ofstate'] = "已发货";}elseif($value['ofstate'] == 4){$value['ofstate'] = "已签收";}// 问题if($value['ofproblem'] == 1){$value['ofproblem'] = "正常";}elseif($value['ofproblem'] == 2){$value['ofproblem'] = "问题";}elseif($value['ofproblem'] == 3){$value['ofproblem'] = "退款";}elseif($value['ofproblem'] == 4){$value['ofproblem'] = "退款完成";}$value['created_at'] = date("Y-m-d H:i:s",$value['created_at']);$arrayData['ofid'] = $value['ofid'];$arrayData['ordernumber'] = $value['ordernumber'];$arrayData['goods'] = $goods_res;$arrayData['consignee'] = $address_res['consignee'];$arrayData['phone'] = $address_res['phone'];$arrayData['address'] = $address_res['address']['province'].' '.$address_res['address']['city'].' '.$address_res['address']['county'].' '.$address_res['addrdetails'];$arrayData['coupontype'] = "优惠券:".$value['coupontype']." 详情:".$value['cname'];$arrayData['integral'] = $value['integral'];$arrayData['qiaodou'] = $value['qiaodou'];$arrayData['paytype'] = $value['paytype'];$arrayData['price'] = $value['price'];$arrayData['logistics'] = $value['logistics'];$arrayData['oddnum'] = $value['oddnum'];$arrayData['freight'] = $value['freight'];$arrayData['created_at'] = $value['created_at'];$arrayData['ofstate'] = $value['ofstate'];$arrayData['ofproblem'] = $value['ofproblem'];$xlsData[$key] = $arrayData;}$this->exportExcel($xlsName,$xlsCell,$xlsData);}

php导出 excel相关推荐

  1. java struts2 excel上传_Java Struts2 实现数据库数据导出Excel文件

    HTML: 导出 Struts.xml true application/vnd.ms-excel;charset=GBK excelStream attachment;filename=${file ...

  2. Java springMVC POI 导出 EXCEL

    2019独角兽企业重金招聘Python工程师标准>>> 思路 : 将需要导出的数据存放在一个List中 创建一个EXCEL表 注意 XSSFWorkbook 只能操作2007以上的版 ...

  3. 如何优雅的导出 Excel

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:juejin.im/post/5c6b6b126fb9a04 ...

  4. Java报表工具FineReport导出EXCEL的四种API

    在实际的应用中会经常需要将数据导出成excel,导出的方式除原样导出还有分页导出.分页分sheet导出和大数据量导出.对于excel 2003版,由于限制了每个sheet的最大行数和列数,大数据量导出 ...

  5. html导出excel时换行符,ASP.NET 导出到Excel时保留换行的代码

    完整代码: protected void Button1_Click(object sender, EventArgs e) { System.Web.HttpContext curContext = ...

  6. java 导出excel 注解_Java基于注解和反射导入导出Excel

    list = ei.getDataList(User.class); for (User user : list){ try{ //to do: 保存/处理数据 //userService.save( ...

  7. 导出excel 数字前少0_【产品介绍】数字压力校验仪

    数字压力校验仪 24V供电 + (4-20)Ma测量 调节7位设置数字显示 | 可拆卸充电锂电池 现场.实验室压力校准系统CWY300数字压力校验仪,是我公司推出的新一代高精度.高稳定.兼具工业4.0 ...

  8. NPOI导入导出EXCEL通用类,可直接使用在WinForm项目中

    由于XSSFWorkbook类型的Write方法限制,Write完成后就自动关闭流数据,所以无法很好的支持的Web模式,网上目前也未找到好的解决方案. 注意:若直接使用在WinForm项目中,必需先下 ...

  9. (转).NET导出Excel的四种方法及评测

    .NET导出Excel的四种方法及评测 导出Excel是.NET的常见需求,开源社区.市场上,都提供了不少各式各样的Excel操作相关包.本文,我将使用NPOI.EPPlus.OpenXML.Aspo ...

  10. java导出excel压缩包_java动态导出excel压缩成zip下载的方法

    本文实例为大家分享了java动态导出excel压缩成zip下载的具体代码,供大家参考,具体内容如下 package pack.java.io.demo; import java.io.Buffered ...

最新文章

  1. DLL(MFC)通过Window消息向C#程序传递数据
  2. 半导体制冷器性能计算
  3. 获取指定目录下的所有文件名
  4. ::的类名前有个 ,什么意思?
  5. 20141230 mysql数值类型和列属性二
  6. WCF - 服务实例管理模式
  7. Lua5.2中的全局环境
  8. 二分图带权最大匹配费用流_简单理解二分图与匈牙利算法
  9. 分享按键精灵中使用大漠插件做后台脚本
  10. scara机器人动荷载_揭密SCARA机器人
  11. Android软键盘的删除键和activity返回冲突
  12. css超链接样式+雪碧图实现导航
  13. 宏基因组数据分析:差异分析(LEfSe安装使用及LDA score计算)
  14. 【那些年我们一起看过的论文】之《Handwritten Digit Recognition with a Back-Propagation Network》
  15. RK3066和AML8726-MX方案对比 频率与功耗 / 性能 / 方案成本
  16. vue3 去除百度地图右上角地图类型展示
  17. 翡翠手链的寓意是什么?要如何保养它才好!
  18. 我们如何走到今天:重塑世界的6项创新
  19. npm install 安装包报错npm ERR! C:\Users\happl\AppData\Roaming\npm-cache_logs\2019-12-09T15_55_28_112Z-deb
  20. alter命令的使用

热门文章

  1. 常用 MQTT 客户端库简介
  2. oracle官网下载plsql,Oracle、OracleClient、PLSQL下载安装配置(64位)
  3. python数据分析和数据可视化总结
  4. python编程符号大全-python符号表
  5. python批量切换图片格式的方法
  6. 简单聊聊电商系统的订单号生成规则
  7. SwiftyJSON的基本用法
  8. 2020.07.01-07.15学习小结
  9. ut-890/485-usb驱动 FOR Linux
  10. 解决 Adobe 系列绿色版本无法打开的问题