加入收藏 | 设为首页 | 会员中心 | 我要投稿 驾考网 (https://www.jiakaowang.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

phpexcel中文教程

发布时间:2023-06-09 13:47:36 所属栏目:PHP教程 来源:
导读:首先到PHPexcel官网上下载最新的PHPexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.PHP和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把classes解压到你项目的一个目录中,重名名为PHPexcel,开
首先到PHPexcel官网上下载最新的PHPexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.PHP和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把classes解压到你项目的一个目录中,重名名为PHPexcel,开始喽,(代码都摘自自带实例)

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,直接生成一个文件

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

$objWriter->save('myexchel.xlsx');

2、提示下载文件

excel 2003 .xls

// 生成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

// 生成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 文件

// 下载一个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 文件

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV')->setDelimiter(',' )  //设置分隔符

                                                                  ->setEnclosure('"' )    //设置包围符

                                                                  ->setLineEnding("rn" )//设置行分隔符

                                                                  ->setSheetIndex(0)      //设置活动表

                                                                  ->save(str_replace('.PHP' , '.csv' ,__FILE__));


HTML 文件

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML');       //将$objPHPEcel对象转换成html格式的

$objWriter->setSheetIndex(0);  //设置活动表

//$objWriter->setimagesRoot

$objWriter->save(str_replace('.PHP', '.htm',__FILE__));     //保存文件

设置表格样式和数据格式

设置默认的字体和文字大小     锚:aaa

$objPHPExcel->getDefaultStyle()->getFont()->setName( 'Arial');

$objPHPExcel->getDefaultStyle()->getFont()->setSize(20);

日期格式      锚:bbb

//获得秒值变量

$dateTimeNow = time();

//三个表格分别设置为当前实际的 日期格式、时间格式、日期和时间格式

//首先将单元格的值设置为由PHPExcel_Shared_Date::PHPToExcel方法转换后的excel格式的值,然后用过得到该单元格的样式里面数字样式再设置显示格式

$objActSheet->setCellValue( 'C9',PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); 


$objActSheet->getStyle( 'C9')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2);


$objActSheet->setCellValue( 'C10',PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ));

$objActSheet->getStyle( 'C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);

$objActSheet->setCellValue( 'C10',PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ));

$objActSheet->getStyle( 'C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);

//将E4到E13的数字格式设置为EUR

$objPHPExcel->getActiveSheet()->getStyle( 'E4:E13')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);

 

(编辑:驾考网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章