扫码关注官方订阅号
84669人学习
65727人学习
82984人学习
467778人学习
498837人学习
471966人学习
256484人学习
152542人学习
224170人学习
139536人学习
81804人学习
85022人学习
11944人学习
20001人学习
60816人学习
5487人学习
15007人学习
2150人学习
6980人学习
194925人学习
359900人学习
1142人学习
19058人学习
3206人学习
180550人学习
48569人学习
17603人学习
40936人学习
1049人学习
750人学习
32909人学习
/** * @creator Jimmy * @data 2018/1/05 * @desc 数据导出到excel(csv文件) * @param $filename 导出的csv文件名称 如date("Y年m月j日").'-test.csv' * @param array $tileArray 所有列名称 * @param array $dataArray 所有列数据 */ public function exportToExcel($filename, $tileArray=[], $dataArray=[]){ ini_set('memory_limit','512M'); ini_set('max_execution_time',0); ob_end_clean(); ob_start(); header("Content-Type: text/csv"); header("Content-Disposition:filename=".$filename); $fp=fopen('php://output','w'); fwrite($fp, chr(0xEF).chr(0xBB).chr(0xBF));//转码 防止乱码(比如微信昵称(乱七八糟的)) fputcsv($fp,$tileArray); $index = 0; foreach ($dataArray as $item) { if($index==1000){ $index=0; ob_flush(); flush(); } $index++; fputcsv($fp,$item); } ob_flush(); flush(); ob_end_clean(); } //这里是调用 用的是tp3.2.3 $ssssd = [1=>'正常 未兑换',2=>'正常 已兑换',3=>'正常 过期',4=>'正常商家已提现',5=>'作废']; $count = $res->alias('l')->where($where)->count();// 查询满足要求的总记录数 $Page = new \Think\Page($count,10000);// 实例化分页类 传入总记录数和每页显示的记录数(25) $ppp = ceil($count/10000); $pp = range(1,$ppp); foreach ($pp as $kkk => $vvv) { $rs[$kkk] = $res->field('l.id lid,l.user_id,l.shop_id,l.code_num,l.code_src,l.winning_time,l.exchange_time,l.status,l.item_id iid,i.title,i.money,s.coder,u.nickname,u.head,s.manager,s.phone')->alias('l')->where($where)->join('sd_item i ON i.id=l.item_id')->join('left join sd_shop s ON s.id=l.shop_id')->join('sd_user u ON u.id=l.user_id')->page($vvv.', 10000')->select(); $str[$kkk] = "用户昵称,兑奖门店号,核销员,核销员手机号,中奖时间,兑换时间,奖项名称,中奖金额,中奖码,兑换状态"; $exl11[$kkk] = explode(',',$str[$kkk]); foreach ($rs[$kkk] as $k => $v){ if (!$v['nickname']) $v['nickname'] = '暂无数据'; if (!$v['coder']) $v['coder'] = '暂无数据'; if (!$v['manager']) $v['manager'] = '暂无数据'; if (!$v['phone']) $v['phone'] = '暂无数据'; if (!$v['winning_time']) $v['winning_time'] = '暂无数据'; if (!$v['exchange_time']) $v['exchange_time'] = '暂无数据'; if (!$v['title']) $v['title'] = '暂无数据'; if (!$v['money']) $v['money'] = '暂无数据'; $exl[$kkk][] = array( $v['nickname'],$v['coder'],$v['manager'],$v['phone'],$v['winning_time'],$v['exchange_time'],$v['title'],$v['money'],$ssssd[$v['status']] ); } $this->exportToExcel('兑奖记录_'.time().$vvv.'.csv',$exl11[$kkk],$exl[$kkk]); } exit();
原文地址:https://blog.csdn.net/yaofare/article/details/78983181
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
精品班
技术支持
技术咨询
学习群
会员优惠
返回顶部