zoukankan      html  css  js  c++  java
  • php 导出 生成多个sheet

     1 <?php
     2 ini_set("max_execution_time", 0);
     3 set_time_limit(0);
     4 function get_all_downexcel($fileName) {
     5     include "./PHPExcel/PHPExcel.php";
     6     $conn = get_db();
     7 
     8     //店铺
     9     $sql = "SELECT * FROM shop where `comment_counts` > 0 ";
    10     $shop_query = $conn->query($sql);
    11     $shop_row = $shop_query->fetchAll();
    12     if(empty($shop_row)){
    13         echo "没有数据";exit;
    14     }
    15     $objPHPExcel = new PHPExcel();
    16     $objPHPExcel->getProperties()
    17         ->setCreator("gaoxing")
    18         ->setLastModifiedBy("gaoxing")
    19         ->setTitle("Office 2003 XLSX Test Document")
    20         ->setSubject("Office 2003 XLSX Test Document")
    21         ->setDescription("Test document for Office 2003 XLSX, generated using PHP classes.")
    22         ->setKeywords("office 2003 openxml php")
    23         ->setCategory("Test result file");
    24     //循环店铺
    25     foreach($shop_row as $key => $val){
    26         $dianping_sql = 'SELECT * FROM dianping_comment where `dianping_id` = "'.$val['dianping_id'].'"';
    27         $dianping_query = $conn->query($dianping_sql);
    28         $dianping_row = $dianping_query->fetchAll();
    29         if(empty($dianping_row)){
    30             continue;
    31         }
    32         //第一个sheet
    33         $objPHPExcel->createSheet();
    34         $objActSheet = $objPHPExcel->setActiveSheetIndex($key);
    35         //标题
    36         $objPHPExcel->getActiveSheet(0)->setCellValue('A1',"昵称");
    37         $objPHPExcel->getActiveSheet(0)->setCellValue('B1',"评分");
    38         $objPHPExcel->getActiveSheet(0)->setCellValue('C1',"评论");
    39         $objPHPExcel->getActiveSheet(0)->setCellValue('D1',"时间");
    40 
    41         $i = 2;
    42         foreach($dianping_row as $dianping_val){
    43             //数据
    44             $objPHPExcel->getActiveSheet()->setCellValue('A'.($i),$dianping_val['nickname']);
    45             $objPHPExcel->getActiveSheet()->setCellValue('B'.($i),$dianping_val['rank']);
    46             $objPHPExcel->getActiveSheet()->setCellValue('C'.($i),$dianping_val['content']);
    47             $objPHPExcel->getActiveSheet()->setCellValue('D'.($i),$dianping_val['posttime']);
    48             $i ++;
    49         }
    50         //sheet名称
    51         $objPHPExcel->getActiveSheet()->setTitle($val['region'].'-'.$val['city'].'-'.$val['name']);
    52 
    53     }
    54     $objWrite = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
    55     header('pragma:public');
    56     header("Content-Disposition:attachment;filename=$fileName.xls");
    57     $objWrite->save('php://output');exit;
    58     die;
    59 
    60 }
    61 
    62 function get_db(){
    63     $servername = 'mysql:host=210.74.14.150:7000;dbname=lvyou';
    64     $username = 'wayhood';
    65     $password = 'wayhood';
    66     $db = new PDO($servername, $username, $password);
    67     return $db;
    68 }
    69 
    70 
    71 get_all_downexcel($fileName="书店-评论");
  • 相关阅读:
    程序员都必读
    ia-64 vs x86-64
    Linux内核学习
    开源liscense对比
    列存储
    大数据科普
    [USACO1.5]数字三角形
    [USACO08FEB]酒店Hotel
    数的划分
    CodeForce 18D
  • 原文地址:https://www.cnblogs.com/gaogaoxingxing/p/14428767.html
Copyright © 2011-2022 走看看