搜尋
首頁後端開發php教程PHPExcel导出excel_PHP教程

如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,例如下面就把<span>$yourStr从utf</span>-8转换成了gb2312:
<span>$yourStr</span> = mb_convert_encoding("gb2312", "UTF-8", <span>$yourStr</span><span>); 

总结 php导出Excel php导入Excel PhpExcel使用说明 PhpExcel使用手册
</span>1:第一推荐无比风骚的PHPExcel,官方网站: http:<span>//</span><span>www.codeplex.com/PHPExcel</span>
<span>导入导出都成,可以导出office2007格式,同时兼容2003。
下载下来的包中有文档和例子,大家可以自行研究。
</span><? 
<span>//</span><span>设置PHPExcel类库的include path </span>
<span>set_include_path</span>('.'. PATH_SEPARATOR .'D:\workspace\biznaligy_eh\dev_src\includes\PHPExcel' . PATH_SEPARATOR . <span>get_include_path</span><span>());     
</span><span>/*</span><span>*
    * 以下是使用示例,对于以 //// 开头的行是不同的可选方式,请根据实际需要
   * 打开对应行的注释。
* 如果使用 Excel5 ,输出的内容应该是GBK编码。
   </span><span>*/</span> 
   <span>require_once</span> 'PHPExcel.php'<span>; 
   </span><span>require_once</span> 'PHPExcel/Writer/Excel5.php';     <span>//</span><span> 用于其他低版本xls </span>
   <span>require_once</span> 'PHPExcel/Writer/Excel2007.php'; <span>//</span><span> 用于 excel-2007 格式 

// 创建一个处理对象实例 </span>
   <span>$objExcel</span> = <span>new</span><span> PHPExcel(); 

</span><span>//</span><span> 创建文件格式写入对象实例, uncomment </span>
   <span>$objWriter</span> = <span>new</span> PHPExcel_Writer_Excel5(<span>$objExcel</span>);     <span>//</span><span> 用于其他版本格式 
   //or
//$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式 
//$objWriter->setOffice2003Compatibility(true); 


//设置文档基本属性 </span>
   <span>$objProps</span> = <span>$objExcel</span>-><span>getProperties(); 
   </span><span>$objProps</span>->setCreator("Zeal Li"<span>); 
   </span><span>$objProps</span>->setLastModifiedBy("Zeal Li"<span>); 
   </span><span>$objProps</span>->setTitle("Office XLS Test Document"<span>); 
    </span><span>$objProps</span>->setSubject("Office XLS Test Document, Demo"<span>); 
   </span><span>$objProps</span>->setDescription("Test document, generated by PHPExcel."<span>); 
   </span><span>$objProps</span>->setKeywords("office excel PHPExcel"<span>); 
    </span><span>$objProps</span>->setCategory("Test"<span>); 
   </span><span>//</span><span>设置当前的sheet索引,用于后续的内容操作。 
//一般只有在使用多个sheet的时候才需要显示调用。 
//缺省情况下,PHPExcel会自动创建第一个sheet被设置SheetIndex=0 </span>
   <span>$objExcel</span>->setActiveSheetIndex(0<span>); 
    </span><span>$objActSheet</span> = <span>$objExcel</span>-><span>getActiveSheet(); 

</span><span>//</span><span>设置当前活动sheet的名称 </span>
    <span>$objActSheet</span>->setTitle('测试Sheet'<span>); 

</span><span>//</span><span>设置单元格内容 由PHPExcel根据传入内容自动判断单元格内容类型 </span>
    <span>$objActSheet</span>->setCellValue('A1', '字符串内容'); <span>//</span><span> 字符串内容 </span>
    <span>$objActSheet</span>->setCellValue('A2', 26);            <span>//</span><span> 数值 </span>
    <span>$objActSheet</span>->setCellValue('A3', <span>true</span>);          <span>//</span><span> 布尔值 </span>
    <span>$objActSheet</span>->setCellValue('A4', '=SUM(A2:A2)'); <span>//</span><span> 公式 

//显式指定内容类型 </span>
   <span>$objActSheet</span>->setCellValueExplicit('A5','8757584',PHPExcel_Cell_DataType::<span>TYPE_STRING); 

   </span><span>//</span><span>合并单元格 </span>
    <span>$objActSheet</span>->mergeCells('B1:C22'<span>); 

   </span><span>//</span><span>分离单元格 </span>
    <span>$objActSheet</span>->unmergeCells('B1:C22'<span>);
   </span><span>//</span><span>设置宽度 </span>
   <span>$objActSheet</span>->getColumnDimension('B')->setAutoSize(<span>true</span><span>); 
   </span><span>$objActSheet</span>->getColumnDimension('A')->setWidth(30<span>); 
   
</span><span>//</span><span>设置单元格内容的数字格式。 
//如果使用了 PHPExcel_Writer_Excel5 来生成内容的话, 
//这里需要注意,在 PHPExcel_Style_NumberFormat 类的 const 变量定义的 
//各种自定义格式化方式中,其它类型都可以正常使用,但当setFormatCode 
   //为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要 
   //修改 PHPExcel_Writer_Excel5_Format 类源代码中的 getXf($style) 方法, 
//在 if ($this->_BIFF_version == 0x0500) { (第363行附近)前面增加一 
   //行代码: 
//if($ifmt === '0') $ifmt = 1; 

//设置格式为PHPExcel_Style_NumberFormat::FORMAT_NUMBER,避免某些大数字 
//被使用科学记数方式显示,配合下面的 setAutoSize 方法可以让每一行的内容 
   //都按原始内容全部显示出来。</span>
    <span>$objStyleA5</span> = <span>$objActSheet</span> ->getStyle('A5'<span>);
   </span><span>$objStyleA5</span> ->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::<span>FORMAT_NUMBER); 

</span><span>//</span><span>设置字体 </span>
    <span>$objFontA5</span> = <span>$objStyleA5</span>-><span>getFont(); 
    </span><span>$objFontA5</span>->setName('Courier New'<span>); 
    </span><span>$objFontA5</span>->setSize(10<span>); 
    </span><span>$objFontA5</span>->setBold(<span>true</span><span>); 
    </span><span>$objFontA5</span>->setUnderline(PHPExcel_Style_Font::<span>UNDERLINE_SINGLE);
    </span><span>$objFontA5</span> ->getColor()->setARGB('FFFF0000'<span>) ;
    </span><span>$objFontA5</span> ->getColor()->setARGB( PHPExcel_Style_Color::<span>COLOR_WHITE);
</span><span>//</span><span> $ objFontA5 ->getFont()->setColor(PHPExcel_Style_Color::COLOR_RED); 

//设置对齐方式 </span>
    <span>$objAlignA5</span> = <span>$objStyleA5</span>-><span>getAlignment(); 
    </span><span>$objAlignA5</span>->setHorizontal(PHPExcel_Style_Alignment::<span>HORIZONTAL_RIGHT); 
    </span><span>$objAlignA5</span>->setVertical(PHPExcel_Style_Alignment::<span>VERTICAL_CENTER); 

</span><span>//</span><span>设置边框 </span>
   <span>$objBorderA5</span> = <span>$objStyleA5</span>-><span>getBorders(); 
   </span><span>$objBorderA5</span>->getTop()->setBorderStyle(PHPExcel_Style_Border::<span>BORDER_THIN); 
   </span><span>$objBorderA5</span>->getTop()->getColor()->setARGB('FFFF0000') ; <span>//</span><span> 边框color </span>
   <span>$objBorderA5</span>->getBottom()->setBorderStyle(PHPExcel_Style_Border::<span>BORDER_THIN); 
   </span><span>$objBorderA5</span>->getLeft()->setBorderStyle(PHPExcel_Style_Border::<span>BORDER_THIN); 
   </span><span>$objBorderA5</span>->getRight()->setBorderStyle(PHPExcel_Style_Border::<span>BORDER_THIN); 

</span><span>//</span><span>设置CELL填充颜色 </span>
   <span>$objFillA5</span> = <span>$objStyleA5</span>-><span>getFill(); 
   </span><span>$objFillA5</span>->setFillType(PHPExcel_Style_Fill::<span>FILL_SOLID); 
   </span><span>$objFillA5</span>->getStartColor()->setARGB('FFEEEEEE'<span>); 

</span><span>//</span><span>从指定的单元格复制样式信息. </span>
    <span>$objActSheet</span>->duplicateStyle(<span>$objStyleA5</span>, 'B1:C22'<span>); 

</span><span>//</span><span>添加图片 </span>
   <span>$objDrawing</span> = <span>new</span><span> PHPExcel_Worksheet_Drawing(); 
   </span><span>$objDrawing</span>->setName('ZealImg'<span>); 
   </span><span>$objDrawing</span>->setDescription('Image inserted by Zeal'<span>); 
   </span><span>$objDrawing</span>->setPath('./zeali.net.logo.gif'<span>); 
   </span><span>$objDrawing</span>->setHeight(36<span>); 
   </span><span>$objDrawing</span>->setCoordinates('C23'<span>); 
   </span><span>$objDrawing</span>->setOffsetX(10<span>); 
   </span><span>$objDrawing</span>->setRotation(15<span>); 
   </span><span>$objDrawing</span>->getShadow()->setVisible(<span>true</span><span>); 
   </span><span>$objDrawing</span>->getShadow()->setDirection(36<span>); 
   </span><span>$objDrawing</span>->setWorksheet(<span>$objActSheet</span><span>); 

</span><span>//</span><span>添加一个新的worksheet </span>
   <span>$objExcel</span>-><span>createSheet(); 
   </span><span>$objExcel</span>->getSheet(1)->setTitle('测试2'<span>); 

</span><span>//</span><span>保护单元格 </span>
   <span>$objExcel</span>->getSheet(1)->getProtection()->setSheet(<span>true</span><span>); 
   </span><span>$objExcel</span>->getSheet(1)->protectCells('A1:C22', 'PHPExcel'<span>);

</span><span>//</span><span>显示网格线: </span>
<span>$objPHPExcel</span>->getActiveSheet()->setShowGridlines(<span>true</span><span>);

</span><span>//</span><span>显示隐藏列</span>
<span>$objPHPExcel</span>->getActiveSheet()->getColumnDimension('C')->setVisible(<span>true</span><span>);
</span><span>$objPHPExcel</span>->getActiveSheet()->getColumnDimension('D')->setVisible(<span>false</span><span>);

</span><span>//</span><span>显示隐藏行</span>
<span>$objPHPExcel</span>->getActiveSheet()->getRowDimension('10')->setVisible(<span>false</span><span>);
</span><span>//</span><span>默认列宽</span>
<span>$objPHPExcel</span>->getActiveSheet()->getDefaultColumnDimension()->setWidth(12<span>);
</span><span>//</span><span>默认行宽</span>
<span>$objPHPExcel</span>->getActiveSheet()->getDefaultRowDimension()->setRowHeight(15<span>);
</span><span>//</span><span>worksheet 默认style 设置 (和默认不同的需单独设置)</span>
<span>$objPHPExcel</span>->getActiveSheet()->getDefaultStyle()->getFont()->setName('Arial'<span>);
</span><span>$objPHPExcel</span>->getActiveSheet()->getDefaultStyle()->getFont()->setSize(8<span>);
</span><span>$objPHPExcel</span>->getActiveSheet()->getDefaultStyle()-><span>getAlignment(); 
</span><span>$objPHPExcel</span>->getActiveSheet()->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::<span>HORIZONTAL_CENTER); 
</span><span>$objPHPExcel</span>->getActiveSheet()->getDefaultStyle()->getAlignment()->setVertical(PHPExcel_Style_Alignment::<span>VERTICAL_CENTER);
</span><span>//</span><span>输出内容 </span>
   <span>$outputFileName</span> = "output.xls"<span>; 
</span><span>//</span><span>到文件 </span><span>
//</span><span>//$objWriter->save($outputFileName); 
//or 
//到浏览器 </span>
   <span>header</span>("Content-Type: application/force-download"<span>); 
   </span><span>header</span>("Content-Type: application/octet-stream"<span>); 
   </span><span>header</span>("Content-Type: application/download"<span>); 
   </span><span>header</span>('Content-Disposition:inline;filename="'.<span>$outputFileName</span>.'"'<span>); 
   </span><span>header</span>("Content-Transfer-Encoding: binary"<span>); 
   </span><span>header</span>("Last-Modified: " . <span>gmdate</span>("D, d M Y H:i:s") . " GMT"<span>); 
   </span><span>header</span>("Cache-Control: must-revalidate, post-check=0, pre-check=0"<span>); 
   </span><span>header</span>("Pragma: no-cache"<span>); 
   </span><span>$objWriter</span>->save('php://output'<span>); 
</span>?>

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/814549.htmlTechArticle如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,例如下面就把 $yourStr从utf -8转换成了gb2312: $yourStr = mb_convert_encoding("gb2312", "UTF-...
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
完全指南:如何使用php扩展PHPExcel处理Excel文件完全指南:如何使用php扩展PHPExcel处理Excel文件Jul 28, 2023 pm 10:01 PM

完全指南:如何使用PHP扩展PHPExcel处理Excel文件引言:在处理大量数据和统计分析时,Excel文件经常被用作数据存储和交换的一种常见格式。使用PHP扩展PHPExcel,我们可以轻松地读取、写入和修改Excel文件,从而有效地处理Excel数据。本文将介绍如何使用PHP扩展PHPExcel来处理Excel文件,并提供代码示例。一、安装PHPExc

PHP开发:使用 PHPExcel 处理 Excel 文件PHP开发:使用 PHPExcel 处理 Excel 文件Jun 15, 2023 pm 03:45 PM

随着数字化时代的到来,数据已经成为了我们日常生活和工作中最重要的一部分,而Excel文件则成为数据处理的重要工具之一。相信很多PHP开发者也会在工作中经常遇到使用Excel文件进行数据处理和操作的情况。本文将为大家介绍使用PHPExcel库来处理Excel文件的方法和注意事项。什么是PHPExcel?PHPExcel是一个PHP类

怎么用phpexcel将Excel文件转成CSV文件并打开怎么用phpexcel将Excel文件转成CSV文件并打开Mar 27, 2023 pm 04:16 PM

​PHPEXCEL是一个优秀的PHP读写Excel文件的类库,它提供了非常充分的API,能够让我们使用PHP来读写Excel文件。而有些时候,我们需要将Excel文件转换成CSV文件,在一些场合下使用。那么,本文主要讲述如何使用PHPEXCEL类库将Excel文件转换成CSV文件,并进行打开。

php如何使用PHPExcel处理Excel文件?php如何使用PHPExcel处理Excel文件?Jun 01, 2023 pm 02:01 PM

PHPExcel是一款开源的PHP库,用于处理MicrosoftExcel(.xls和.xlsx)文件。它可以读取、写入和操作Excel文件,提供了丰富的函数和方法。在PHP项目中使用PHPExcel库,可以快速方便地处理Excel文件,实现数据的导入、导出和数据处理等功能。本文将介绍如何使用PHPExcel处理Excel文件。一、安装PHPExcel要使

使用PHP和PHPExcel创建Excel文件使用PHP和PHPExcel创建Excel文件May 11, 2023 am 08:40 AM

在如今信息快速传递的时代,数据的处理和存储变得越来越重要。而Excel表格的使用是很多人的首选,这是因为Excel表格可以整合各种数据并且可以轻松地进行分析和处理。为了更加高效地完成Excel表格的创建,我们可以使用PHP和PHPExcel这两个强大的工具。在本篇文章中,我们将介绍如何使用PHP和PHPExcel创建Excel文件。1.安装PHPExcel首

PHP开发技巧:如何使用PHPExcel和PHPExcel_IOFactory操作MySQL数据库PHP开发技巧:如何使用PHPExcel和PHPExcel_IOFactory操作MySQL数据库Jul 02, 2023 pm 02:28 PM

PHP开发技巧:如何使用PHPExcel和PHPExcel_IOFactory操作MySQL数据库概述:在Web开发中,处理Excel文件是一个常见且重要的任务。PHPExcel是一个功能强大而且易于使用的PHP库,它可以帮助我们读取和写入Excel文件。本文将介绍如何使用PHPExcel和PHPExcel_IOFactory库来操作MySQL数据库。步骤1

phpexcel为什么成为PHP开发者关注的对象phpexcel为什么成为PHP开发者关注的对象Mar 27, 2023 pm 06:15 PM

PHPExcel是一种处理微软 Excel 文件的开源 PHP 库,可以读取、创建、修改和保存 Excel 文件。它是一个强大且高度可定制的工具,可用于处理数据分析、报告生成、数据导入和导出等任务。在本文中,将介绍PHPExcel为什么成为PHP开发者关注的对象。

PHP开发技巧:如何使用PHPExcel操作MySQL数据库PHP开发技巧:如何使用PHPExcel操作MySQL数据库Jul 02, 2023 pm 12:21 PM

PHP开发技巧:如何使用PHPExcel操作MySQL数据库随着互联网的蓬勃发展,大量的数据被存储于数据库中,并且需要进行导入、导出、处理等操作。在PHP开发中,PHPExcel是一个强大的库,可以简化与Excel文件的交互,实现数据的导入与导出。本文将介绍如何使用PHPExcel来操作MySQL数据库,实现数据的导入和导出功能。PHPExcel的安装和配置

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用