当前位置:首页 > PHP教程 > php高级应用 > 列表

php 导出excel数据实例代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-10 14:27:46 浏览: 评论:0 

在php中要导入excel表格我们最简单的就是输入csv文件,还有一种办法就是使用PHPExcel插件来实现,常用的都是使用PHPExcel插件了,它有强大的功能,下面我们来看个实例.

很多网站都有导出数据为excel的功能,最开始想用js导出但是网上的文章几乎都一样而且浏览器兼容性还有问题,总之不太好用,那只好用php导出了服务器端处理不存在浏览器兼容的问题.

首先是获取数据发送到php端处理,代码如下:

  1. require_once '../Classes/PHPExcel.php'; 
  2. require_once '../Classes/PHPExcel/IOFactory.php'; 
  3. $objPHPExcel = new PHPExcel(); 
  4. $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")->setLastModifiedBy("Maarten Balliauw")->setTitle("Office 2007 XLSX Test Document")->setSubject("Office 2007 XLSX Test Document")->setDescription("Document for Office 2007 XLSX, generated using PHP classes.")->setKeywords("office 2007 openxml php")->setCategory("Test result file"); 
  5.  
  6. $objPHPExcel->setActiveSheetIndex(0); 
  7. $objRichText = new PHPExcel_RichText(); 
  8. $objRichText->createText(''); 
  9. $objPayable = $objRichText->createTextRun('即时监测数据'); 
  10. $objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_RED )); 
  11. $objPayable->getFont()->setBold(true); 
  12. $objPayable->getFont()->setSize(24); 
  13. $objPHPExcel->getActiveSheet()->getCell('B1')->setValue($objRichText); 
  14. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);  // 加粗 
  15. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(24);   // 字体大小 
  16. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); // 文本颜色 
  17. $objPHPExcel->getActiveSheet()->getStyle('A1:G1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); 
  18. $objPHPExcel->getActiveSheet()->getStyle('A1:G1')->getFill()->getStartColor()->setARGB('00FFFFE3');//底纹 
  19.  
  20. // 列宽 
  21. //$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true); 
  22. $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(12); 
  23. $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(18); 
  24. $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12); 
  25. $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(18); 
  26. $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(12); 
  27. $objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(18); 
  28. $objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20); 
  29.  
  30. // 行高 
  31. for($i = 2; $i <= 17; $i++) { 
  32.  $objPHPExcel->getActiveSheet()->getRowDimension($i)->setRowHeight(22); 
  33. } 
  34.  
  35. $objPHPExcel->getActiveSheet()->setCellValue('A2', '姓名'); 
  36. $objPHPExcel->getActiveSheet()->setCellValue('A3', 'PHP'); 
  37. $objPHPExcel->getActiveSheet()->setCellValue('A4', 'EXCEL'); 
  38. $objPHPExcel->getActiveSheet()->setCellValue('A5', ''); 
  39. $objPHPExcel->getActiveSheet()->setCellValue('A6', 'XXX'); 
  40. $objPHPExcel->getActiveSheet()->setCellValue('A7', 'V'); 
  41. $objPHPExcel->getActiveSheet()->setCellValue('A8', 'd'); 
  42. $objPHPExcel->getActiveSheet()->setCellValue('A9', 'name'); 
  43. $objPHPExcel->getActiveSheet()->setCellValue('A10', '描述'); 
  44. for($i = 2; $i <= 16; $i++) { 
  45.  $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getFont()->setBold(true);  // 加粗 
  46. } 
  47.  
  48. $objPHPExcel->getActiveSheet()->setCellValue('B2', '[姓名]'); 
  49. $objPHPExcel->getActiveSheet()->setCellValue('B3', '导出带图片的EXCEL'); 
  50. $objPHPExcel->getActiveSheet()->setCellValue('B4', 'XXXXX'); 
  51.  
  52. // 为excel加图片 
  53. //$objDrawing = new PHPExcel_Worksheet_Drawing(); 
  54. //$objDrawing->setName('Photo'); 
  55. //$objDrawing->setDescription('Photo'); 
  56. //$objDrawing->setPath('../images/touxiang.jpg'); 
  57. //$objDrawing->setHeight(170); 
  58. //$objDrawing->setWidth(120); 
  59. //$objDrawing->setCoordinates('G2'); 
  60. //$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); 
  61.  
  62. $objPHPExcel->getActiveSheet()->setCellValue('A17', '其它要求'); 
  63. $objPHPExcel->getActiveSheet()->setCellValue('B17', '[其它要求]'); 
  64.  
  65. $objPHPExcel->getActiveSheet()->getStyle('A17')->getFont()->setBold(true);  // 加粗phpfensi.com
  66.  
  67. $objPHPExcel->setActiveSheetIndex(0); 
  68. $objPHPExcel->getActiveSheet()->setTitle('即时监测数据'); 
  69.  
  70. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); 
  71.  
  72. $objWriter->save('PHPExcel.xls');

Tags: PHP导出excel mysql数据库导出excel

分享到: