phpExcel的使用方法及使用实例【超全】

潘工 发布于 2015/09/08 22:55
阅读 1K+
收藏 5

本文介绍php扩展phpexcel的使用方法及使用实例

首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把classes解压到你项目的一个目录中,重名名为phpexcel,开始喽,(代码都摘自自带实例)

程序部分

<?php require_once './phpexcel/PHPExcel.php'; // 首先创建一个新的对象  PHPExcel object $objPHPExcel = new PHPExcel(); // 设置文件的一些属性,在xls文件——>属性——>详细信息里可以看到这些值,xml表格里是没有这些值的 $objPHPExcel ->getProperties() //获得文件属性对象,给下文提供设置资源 ->setCreator( "Maarten Balliauw") //设置文件的创建者 ->setLastModifiedBy( "Maarten Balliauw") //设置最后修改者 ->setTitle( "Office 2007 XLSX Test Document" ) //设置标题 ->setSubject( "Office 2007 XLSX Test Document" ) //设置主题 ->setDescription( "Test document for Office 2007 XLSX, generated using PHP classes.") //设置备注 ->setKeywords( "office 2007 openxml php") //设置标记 ->setCategory( "Test result file"); //设置类别 // 位置aaa  *为下文代码位置提供锚 // 给表格添加数据 $objPHPExcel->setActiveSheetIndex(0) //设置第一个内置表(一个xls文件里可以有多个表)为活动的 ->setCellValue( 'A1', 'Hello' ) //给表的单元格设置数据 ->setCellValue( 'B2', 'world!' ) //数据格式可以为字符串 ->setCellValue( 'C1', 12) //数字型 ->setCellValue( 'D2', 12) // ->setCellValue( 'D3', true ) //布尔型 ->setCellValue( 'D4', '=SUM(C1:D2)' );//公式 //得到当前活动的表,注意下文教程中会经常用到$objActSheet $objActSheet = $objPHPExcel->getActiveSheet(); // 位置bbb  *为下文代码位置提供锚 // 给当前活动的表设置名称 $objActSheet->setTitle('Simple2222');

代码还没有结束,可以复制下面的代码来决定我们将要做什么

我们可以从以下实例中选择我们要实际使用的功能,灵活搭配:
1、直接生成一个文件

<?php $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('myexchel.xlsx');

2、提示下载文件
excel 2003 .xls

<?php // 生成2003excel格式的xls文件 header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="01simple.xls"');
header('Cache-Control: max-age=0');
 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); exit;

excel 2007 .xlsx

<?php // 生成2007excel格式的xlsx文件 header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="01simple.xlsx"');
header('Cache-Control: max-age=0');
 
$objWriter = PHPExcel_IOFactory:: createWriter($objPHPExcel, 'Excel2007');
$objWriter->save( 'php://output'); exit;

pdf 文件

<?php // 下载一个pdf文件 header('Content-Type: application/pdf');
header('Content-Disposition: attachment;filename="01simple.pdf"');
header('Cache-Control: max-age=0');
 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objWriter->save('php://output'); exit; // 生成一个pdf文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objWriter->save('a.pdf');

CSV 文件

<?php $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV')->setDelimiter(',' ) //设置分隔符 ->setEnclosure('"' ) //设置包围符 ->setLineEnding("\r\n" )//设置行分隔符潘军伟http://www.seo0395.com ->setSheetIndex(0) //设置活动表 ->save(str_replace('.php' , '.csv' , __FILE__));

HTML 文件

<?php $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); //将$objPHPEcel对象转换成html格式的 潘军伟http://www.seo0395.com $objWriter->setSheetIndex(0); //设置活动表 //$objWriter->setImagesRoot('http://www.example.com'); $objWriter->save(str_replace('.php', '.htm', __FILE__)); //保存文件

设置表格样式和数据格式

内容过多,懒得复制了,分享一个链接,大家自己去看吧

http://www.seo0395.com/archives-211

加载中
返回顶部
顶部