• PHP:引用PhpExcel导出数据到excel表格


    我使用的是tp3.2框架(下载地址:http://www.thinkphp.cn/topic/38123.html)

    1.首先要下载PhpExcel类库,放在如下图目录下

    2.调用方法

     1 public function exportExcel($expTitle,$expCellName,$expTableData)
     2 {
     3     $xlsTitle = iconv('utf-8', 'gb2312', $expTitle);//文件名称
     4     $fileName = $_SESSION['account'].date('_YmdHis');//or $xlsTitle 文件名称可根据自己情况设定
     5     $cellNum = count($expCellName);
     6     $dataNum = count($expTableData);
     7     vendor("PHPExcel.PHPExcel");//引入类库,一定要引对,否则会报错找不到这个类
     8     $objPHPExcel = new PHPExcel();
     9     $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');
    10 
    11     $objPHPExcel->getActiveSheet(0)->mergeCells('A1:'.$cellName[$cellNum-1].'1');//合并单元格
    12     // $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', $expTitle.'  Export time:'.date('Y-m-d H:i:s'));
    13     for($i=0;$i<$cellNum;$i++){
    14         $objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i].'2', $expCellName[$i][1]);
    15     }
    16     // Miscellaneous glyphs, UTF-8
    17     for($i=0;$i<$dataNum;$i++){
    18         for($j=0;$j<$cellNum;$j++){
    19             $objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j].($i+3), $expTableData[$i][$expCellName[$j][0]]);
    20         }
    21     }
    22 
    23     header('pragma:public');
    24     header('Content-type:application/vnd.ms-excel;charset=utf-8;name="'.$xlsTitle.'.xls"');
    25     header("Content-Disposition:attachment;filename=$fileName.xls");//attachment新窗口打印inline本窗口打印
    26     ob_clean();//把数据从PHP的缓冲(buffer)中释放出来。
    27     flush();//把不在缓冲(buffer)中的或者说是被释放出来的数据发送到浏览器。
    28     $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel5');
    29     $objWriter->save('php://output');
    30     exit;
    31 }
    32 /**
    33  *
    34  * 导出Excel
    35  */
    36 function daochu()
    37 {//导出Excel
    38     $xlsName  = "User";
    39     $xlsCell  = array(
    40         array('id','账号序列'),
    41         array('u_name','用户名字'),
    42         array('u_addres','地址'),
    43         array('u_tel','电话'),
    44         array('u_card','身份证号'),
    45         array('u_time','申报时间'),
    46         // array('u_imgz','申报时间'),
    47         // array('u_imgf','申报时间'),
    48         array('b_one_beizhu','办公人员备注'),
    49         array('b_shenhe_p','办公室审核人员'),
    50         array('water_kj','水表口径'),
    51         array('water_wz','水表具体位置'),
    52         array('water_quyu','区域位置'),
    53         array('water_start_time','施工日期'),
    54         array('water_start_peo','施工人员'),
    55         array('water_start_jingli','施工经理'),
    56         array('water_beizhu','施工经理备注'),
    57         array('water_xingzhi','用水性质'),
    58         array('watch_num','水表底数'),
    59         array('watch_time','抄表日期'),
    60         array('watch_peo','抄表人员'),
    61         array('moneyjingli_name','收费经理'),
    62         array('moneyjingli_beizhu','收费经理备注'),
    63 
    64         array('jingli_name','经理名称')
    65 
    66     );
    67     $xlsModel = M('api_aliucheng');
    68 
    69     $xlsData  = $xlsModel->Field('id,u_name,u_addres,u_tel,u_card,u_time,b_one_beizhu,b_shenhe_p,water_kj,water_wz,water_quyu,water_start_time,water_start_peo,water_start_jingli,water_beizhu,water_xingzhi,watch_num,watch_time,watch_peo,moneyjingli_name,moneyjingli_beizhu,jingli_name')->where(array('jingli_state_san'=>1))->select();
    70 
    71     $this->exportExcel($xlsName,$xlsCell,$xlsData);
    72 
    73 }
    3.导出结果(上面标红的地方要特别注意)



    成为不了聪明的人,那就做一个有耐心、肯钻研,坚持不懈,永不放弃的人……
  • 相关阅读:
    企业如何推行白盒测试
    Java命名规范
    MobileVLC for iphoneos4.3
    用Android NDK编译FFmpeg
    Linux 下Android 开发环境搭建 ---CentOS
    为什么要做白盒测试
    vlc的第三方库contrib的修改之一:live库的修改
    VC命名规范
    POJ 1470 Closest Common Ancestors (LCA入门题)
    HDU 4407 Sum 第37届ACM/ICPC 金华赛区 第1008题 (容斥原理)
  • 原文地址:https://www.cnblogs.com/wrld/p/9073195.html
Copyright © 2020-2023  润新知