使用PHPExcel导出excel文件。
下载地址如下: https://github.com/PHPOffice/PHPExcel,需要的文件为 PHPExcel/Classes整个目录,引入PHPExcel.php即可,PHPExcel文件夹下内容会自行引入。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
<?php error_reporting(E_ALL); date_default_timezone_set('Asia/Shanghai'); require_once 'Classes/PHPExcel.php'; $data=array( 0=>array( 'id'=>1, 'username'=>'张三', 'sex'=>'男' ), 1=>array( 'id'=>2, 'username'=>'李四', 'sex'=>'女' ) ); $objPHPExcel=new PHPExcel(); $objPHPExcel->getProperties()->setCreator('http://www.baidu.com') ->setLastModifiedBy('http://www.baidu.com') ->setTitle('Office 2007 XLSX Document') ->setSubject('Office 2007 XLSX Document') ->setDescription('Document for Office 2007 XLSX, generated using PHP classes.') ->setKeywords('office 2007 openxml php') ->setCategory('Result file'); $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A1','ID') ->setCellValue('B1','用户名') ->setCellValue('C1','性别'); $i=2; foreach($data as $k=>$v){ $objPHPExcel->setActiveSheetIndex(0) ->setCellValue('A'.$i,$v['id']) ->setCellValue('B'.$i,$v['username']) ->setCellValue('C'.$i,$v['sex']); $i++; } $objPHPExcel->getActiveSheet()->setTitle('数据导出'); $objPHPExcel->setActiveSheetIndex(0); $filename='数据导出'.'_'.date('Y-m-dHis'); //生成xlsx文件 /* header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="'.$filename.'.xlsx"'); header('Cache-Control: max-age=0'); $objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007'); */ //生成xls文件 header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="'.$filename.'.xls"'); header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); exit; |