import("Org.Util.PHPExcel");
$excel = new \PHPExcel();
$excel->getProperties()->setCreator("JAMES")
->setLastModifiedBy("JAMES")
->setTitle("zltrans")
->setSubject("Dorder")
->setDescription("Dorder List")
->setKeywords("Dorder")
->setCategory("Test result file");
$excel->getActiveSheet()->setTitle('统计数据表');
// 设置单元格高度
// 所有单元格默认高度
$excel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(25);
// 第一行的默认高度
$excel->getActiveSheet()->getRowDimension('1')->setRowHeight(30);
// 垂直居中
$excel->getActiveSheet()->getDefaultStyle()->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
// 设置水平居中
$excel->getActiveSheet()->getDefaultStyle()->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//Excel表格式
$letter = array('A','B','C','D','E','F','G','H','I','J','K','L','M');
//表头数组
$tableheader = array('序号','小程序名称','打开次数','访问次数','访问人数','新用户数','人均停留时长/秒','次均停留时长/秒','平均访问深度','累计用户数','转发次数','转发人数','日期');
$tablestyle = array(
array('width'=>'5'),
array('width'=>'30'),
array('width'=>'15'),
array('width'=>'15'),
array('width'=>'15'),
array('width'=>'20'),
array('width'=>'40'),
array('width'=>'15'),
array('width'=>'20'),
array('width'=>'15'),
array('width'=>'15'),
array('width'=>'15'),
array('width'=>'15'),
);
//填充表头信息
for($i = 0;$i < count($tableheader);$i++) {
$excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
$excel->getActiveSheet()->getColumnDimension($letter[$i])->setWidth($tablestyle[$i]['width']);
}
$auth_statistics = M('auth_statistics')->where($where)->order("$type desc")->select(); //数据
$session_cnt = 0;
$visit_pv = 0;
$visit_uv = 0;
$visit_uv_new = 0;
$visit_total = 0;
foreach ($auth_statistics as $key=>$val){
$i = $key+2;
$sort = $key+1;
$excel->getActiveSheet()->setCellValue("$letter[0]$i","{$sort}");
$excel->getActiveSheet()->setCellValue("$letter[1]$i","{$val['appname']}");
$excel->getActiveSheet()->setCellValue("$letter[2]$i","{$val['session_cnt']}");
$excel->getActiveSheet()->setCellValue("$letter[3]$i","{$val['visit_pv']}");
$excel->getActiveSheet()->setCellValue("$letter[4]$i","{$val['visit_uv']}");
$excel->getActiveSheet()->setCellValue("$letter[5]$i","{$val['visit_uv_new']}");
$excel->getActiveSheet()->setCellValue("$letter[6]$i","{$val['stay_time_uv']}");
$excel->getActiveSheet()->setCellValue("$letter[7]$i","{$val['stay_time_session']}");
$excel->getActiveSheet()->setCellValue("$letter[8]$i","{$val['visit_depth']}");
$excel->getActiveSheet()->setCellValue("$letter[9]$i","{$val['visit_total']}");
$excel->getActiveSheet()->setCellValue("$letter[10]$i","{$val['share_pv']}");
$excel->getActiveSheet()->setCellValue("$letter[11]$i","{$val['share_uv']}");
$excel->getActiveSheet()->setCellValue("$letter[12]$i","{$val['ref_date']}");
$session_cnt +=$val['session_cnt'];
$visit_pv +=$val['visit_pv'];
$visit_uv += $val['visit_uv'];
$visit_uv_new +=$val['visit_uv_new'];
$visit_total +=$val['visit_total'];
}
$final_num = count($auth_statistics)+2;
$excel->getActiveSheet()->setCellValue("$letter[0]$final_num","总数");
$excel->getActiveSheet()->setCellValue("$letter[1]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[2]$final_num","打开次数:{$session_cnt}");
$excel->getActiveSheet()->setCellValue("$letter[3]$final_num","访问次数:{$visit_pv}");
$excel->getActiveSheet()->setCellValue("$letter[4]$final_num","访问人数:{$visit_uv}");
$excel->getActiveSheet()->setCellValue("$letter[5]$final_num","新用户数:{$visit_uv_new}");
$excel->getActiveSheet()->setCellValue("$letter[6]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[7]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[8]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[9]$final_num","累计用户数:{$visit_total}");
$excel->getActiveSheet()->setCellValue("$letter[10]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[11]$final_num","");
$excel->getActiveSheet()->setCellValue("$letter[12]$final_num","");
import("Org.Util.PHPExcel.IOFactory");
$objWriter = \PHPExcel_IOFactory::createWriter($excel,'Excel2007');
$name = $ref_date."统计数据.xlsx";
// $objWriter->save($name);
header("Pragma: public");
header("Expires: 0");
header("Expires: 0");
header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
header("Content-Type:application/force-download");
header("Content-Type:application/vnd.ms-execl");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");;
header('Content-Disposition:attachment;filename="'.$name.'"');
header("Content-Transfer-Encoding:binary");
$objWriter->save('php://output');
phpexcel表格 导出
最新推荐文章于 2022-05-16 14:11:23 发布