phpExcel中文帮助手册

合集下载

phpspreadsheet中文文档(五)节约内存+PHPExcel迁移

phpspreadsheet中文文档(五)节约内存+PHPExcel迁移

phpspreadsheet中⽂⽂档(五)节约内存+PHPExcel迁移2019年10⽉11⽇14:03:31节省内存PhpSpreadsheet在⼯作表中平均每个单元格使⽤约1k,因此⼤型⼯作簿可以迅速⽤尽可⽤内存。

单元缓存提供了⼀种机制,使PhpSpreadsheet可以将单元对象维护在较⼩的内存或⾮内存中(例如:在磁盘上,在APCu中,内存缓存或Redis中)。

这使您可以减少⼤型⼯作簿的内存使⽤量,尽管以访问单元数据的速度为代价。

默认情况下,PhpSpreadsheet将所有单元格对象保留在内存中,但是您可以通过提供⾃⼰的实现来指定替代项。

PhpSpreadsheet密钥会⾃动命名,并在使⽤后清除,因此单个缓存实例可在PhpSpreadsheet的⼏种⽤法之间共享,甚⾄与其他缓存⽤法共享。

为了使细胞缓存,您必须提供⾃⼰的实现,像这样的缓存:$cache = new MyCustomPsr16Implementation();\PhpOffice\PhpSpreadsheet\Settings::setCache($cache);将为每个单独的⼯作表维护⼀个单独的缓存,并在根据您配置的设置实例化⼯作表时⾃动创建该缓存。

⼀旦开始阅读⼯作簿或创建第⼀个⼯作表,就⽆法更改配置设置。

当⼼TTL与常见的缓存概念相反,PhpSpreadsheet数据⽆法从头开始重新⽣成。

如果存储了某些数据,但以后⽆法检索,则PhpSpreadsheet将引发异常。

这意味着存储在缓存中的数据不得由第三⽅或通过TTL机制删除。

因此,请确保TTL已停⽤或⾜够长以覆盖PhpSpreadsheet的全部⽤法。

常见⽤例PhpSpreadsheet不随备⽤缓存实现⼀起提供。

您可以根据⾃⼰的环境选择最合适的实现。

您可以从头开始实现,也可以使⽤。

这样的库之⼀就是,它提供了多种选择。

有关详细信息,请参阅他们的⽂档,但是这⾥有⼀些建议可以帮助您⼊门。

PHPer必备技能:PHPExcel

PHPer必备技能:PHPExcel

PHPer必备技能:PHPExcelHPExcel是PHP语言操作Excel文件最强大的一个工具,也是身为一个PHPer的必备技能。

本课程将带领大家全面解析PHPexcel的导入导出、样式控制、图形报表操作,帮助大家在今后工作中玩转任何文件操作需求。

导师简介PHP高级开发工程师,从事PHP开发多年,现就职于国内某大型知名互联网公司,爱钻研、爱探索、乐于分享知识。

课程简介本课程将带领大家全面解析PHPexcel的导入导出、样式控制、图形报表操作,帮助大家在今后工作中玩转任何文件操作需求。

你能学到什么?1.PHPExcel简单列表导出2.PHPExcel复制样式控制3.PHPExcel高级图形报表4.PHPExcel文件导入5.PHPExcel缓存操作大纲一览第1章课程前导什么是PHPExcel?PHPExcel可以用来做什么?PHPExcel强大之处在哪里?本章节将给大家一个答案。

第2章前期准备本章带领大家一起学习如何配置虚拟域名,以及遇到WAMP环境启动失败时如何处理,为学习本课程做好前期准备工作。

第3章快速入门实例通过在桌面操作Excel来解析PHP生成Excel的主要步骤,写一个PHP快速生成一个Excel的小实例加深对生成步骤的印象。

第4章 PHPExcel导出MySQL数据库数据编写一个完整的PHP查询mysql数据并导出到Excel中的实例。

第5章 Excel样式控制(一)介绍并演示如何去操控Excel的各种样式。

第6章 Excel样式控制(二)在上一章实例基础上介绍并演示如何去操控Excel的各种样式第7章添加图片、批注在上一章实例基础上介绍并演示如何在Excel中添加批注、图片等。

第8章 PHP操作Excel生成图形报表展示PHPExcel生成图形报表的强大功能,并讲解其中一种图表生成的例子.第9章 PHP导入Excel编写一个完整的使用PHP读取上传的Excel文件并存储至mysql中的实例.第10章课程回顾及注意事项总结使用PHPExcel对excel文档导入和导出步骤,使用过程中常见错误分析及解决办法.学习链接:/video/8359。

phpQuery中文手册(更新中)

phpQuery中文手册(更新中)

phpQuery中⽂⼿册(更新中)⽰例phpQuery::newDocumentFileXHTML('my-xhtml.html')->find('p'); $ul = pq('ul');载⼊⽂档phpQuery::newDocument($html, $contentType = null) 根据标记URL新建⼀个⽂档。

如果 $contentType为空,则根据⽂档⾃动检测编码。

检测失败, 则对于text/html类型⽂档⾃动赋予utf-8编码。

phpQuery::newDocumentFile($file, $contentType = null) 根据⽂件新建⼀个⽂档。

类似于newDocument()phpQuery::newDocumentHTML($html, $charset = 'utf-8')phpQuery::newDocumentXHTML($html, $charset = 'utf-8')phpQuery::newDocumentXML($html, $charset = 'utf-8')phpQuery::newDocumentPHP($html, $contentType = null)phpQuery::newDocumentFileHTML($file, $charset = 'utf-8')phpQuery::newDocumentFileXHTML($file, $charset = 'utf-8')phpQuery::newDocumentFileXML($file, $charset = 'utf-8')phpQuery::newDocumentFilePHP($file, $contentType)pq functionpq($param, $context = null);pq(); 相当于 jQuery的$();。

phpexcel使用方法

phpexcel使用方法

phpexcel使用方法PHPExcel可是个功能强大的好东西。

下面由店铺整理了几种phpexcel 使用方法,希望对大家有所帮助。

phpexcel 使用方法(一)equire_once 'PHPExcel.php';////require_once'PHPExcel/Writer/Excel5.php'; // 用于其他低版本xls// or////require_once'PHPExcel/Writer/Excel2007.php'; // 用于excel-2007 格式// 创建一个处理对象实例$objExcel = new PHPExcel();// 创建文件格式写入对象实例, uncomment////$objWriter = newPHPExcel_Writer_Excel5($objExcel); // 用于其他版本格式// or////$objWriter = newPHPExcel_Writer_Excel2007($objExcel); // 用于2007 格式$objProps = $objExcel->getProperties ();//设置创建者$objProps->setCreator ( 'XuLulu');//设置最后修改者$objProps->setLastModifiedBy("XuLulu");//描述$objProps->setDescription("摩比班级");//设置标题$objProps->setTitle ( '管理器' );//设置题目$objProps->setSubject("OfficeXLS Test Document, Demo");//设置关键字$objProps->setKeywords ( '管理器' );//设置分类$objProps->setCategory ( "Test");//工作表设置$objExcel->setActiveSheetIndex( 0 );$objActSheet = $objExcel->getActiveSheet ();//单元格赋值例:$objActSheet->setCellValue ( 'A1', 'ID');$objActSheet->setCellValue ( 'B1', 'HashCode');$objActSheet->setCellValue ( 'C1', 'ModelName');$objActSheet->setCellValue ( 'D1', 'IndexName');$objActSheet->setCellValue('A1', '字符串内容'); // 字符串内容$objActSheet->setCellValue('A2', 26); // 数值$objActSheet->setCellValue('A3', true); // 布尔值$objActSheet->setCellValue('A4', '=SUM(A2:A2)'); // 公式//自动设置单元格宽度例:$objActSheet->getColumnDimension('A')->setAutoSize(tru e);//手动设置单元格的宽度例://$objActSheet->getColumnDimension('A')->setWidth(10);//导出的文件名$outputFileName = iconv ( 'UTF-8', 'gb2312', 'XuLulu_'. time() . '.xlsx' );//直接导出文件$objWriter->save ( $outputFileName );//文件直接输出到浏览器header ( 'Pragma:public');header ( 'Expires:0');header ( 'Cache-Control:must-revalidate,post-check=0,pre-check=0');header ( 'Content-Type:application/force-download');header ( 'Content-Type:application/vnd.ms-excel');header ( 'Content-Type:application/octet-stream');header ( 'Content-Type:application/download');header ( 'Content-Disposition:attachment;filename='. $outputFileName );header ( 'Content-Transfer-Encoding:binary');$objWriter->save ( 'php://output');其他设置://显式指定内容类型$objActSheet->setCellValueExplicit('A5','8474758478574875 84',PHPExcel_Cell_DataType::TYPE_STRING);//合并单元格$objActSheet->mergeCells('B1:C22');//分离单元格$objActSheet->unmergeCells('B1:C22');//得到单元格的样式$objStyleA5 = $objActSheet->getStyle('A5');//设置字体$objFontA5 = $objStyleA5->getFont();$objFontA5->setName('Courier New');$objFontA5->setSize(10);$objFontA5->setBold(true);$objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLIN E_SINGLE);$objFontA5->getColor()->setARGB('FF999999');//设置对齐方式$objAlignA5 = $objStyleA5->getAlignment();$objAlignA5->setHorizontal(PHPExcel_Style_Alignment::HO RIZONTAL_RIGHT);$objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTI CAL_CENTER);//设置边框$objBorderA5 = $objStyleA5->getBorders();$objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_B order::BORDER_THIN);$objBorderA5->getTop()->getColor()->setARGB('FFFF0000') ;// color$objBorderA5->getBottom()->setBorderStyle(PHPExcel_Styl e_Border::BORDER_THIN);$objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_B order::BORDER_THIN);$objBorderA5->getRight()->setBorderStyle(PHPExcel_Style_ Border::BORDER_THIN);//设置填充颜色$objFillA5 = $objStyleA5->getFill();$objFillA5->setFillType(PHPExcel_Style_Fill::FILL_SOLID);$objFillA5->getStartColor()->setARGB('FFEEEEEE');//从指定的单元格复制样式信息.$objActSheet->duplicateStyle($objStyleA5,'B1:C22');//*************************************//添加图片$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('ZealImg');$objDrawing->setDescription('Image inserted byZeal');$objDrawing->setPath('./.logo.gif');$objDrawing->setHeight(36);$objDrawing->setCoordinates('C23');$objDrawing->setOffsetX(10);$objDrawing->setRotation(15);$objDrawing->getShadow()->setVisible(true);$objDrawing->getShadow()->setDirection(36);$objDrawing->setWorksheet($objActSheet);//添加一个新的worksheet$objExcel->createSheet();$objExcel->getSheet(1)->setTitle('测试2');//保护单元格$objExcel->getSheet(1)->getProtection()->setSheet(true);$objExcel->getSheet(1)->protectCells('A1:C22','PHPExcel');PHPExcel在cakephp中应用:在Vendors/下创建一个文件夹Excel,将PHPExcel的目录如下:在要调用的Controller下的方法写如下代码:App::import ( 'Vendor', 'Excel', array ('file' =>'PHPExcel.php' ) );后,就可以实例化PHPExcel;具体跟以上情况一样。

phpspreadsheet中文手册

phpspreadsheet中文手册

phpspreadsheet中文手册PHPSpreadsheet是一个强大的PHP库,用于轻松读取,写入和操作各种电子表格格式,包括Excel和OpenOffice。

本手册将指导您熟悉PHPSpreadsheet的使用。

1. 安装通过Composer Composer是安装PHP依赖的工具。

可以通过在控制台中运行以下命令安装PHPSpreadsheet:```composer require phpoffice/phpspreadsheet```2. 读取电子表格使用PHPSpreadsheet可轻松读取各种电子表格文件。

可以通过以下代码读取Excel文件:```use PhpOffice\PhpSpreadsheet\IOFactory;$reader = IOFactory::createReader('Xlsx');$spreadsheet = $reader->load('file.xlsx');```对于其他格式的文件,只需要更改创建读取器的参数即可。

3. 写入电子表格使用PHPSpreadsheet可轻松创建新的电子表格文件。

可以通过以下代码创建Excel文件:```use PhpOffice\PhpSpreadsheet\Spreadsheet;use PhpOffice\PhpSpreadsheet\Writer\Xlsx;$spreadsheet = new Spreadsheet();$sheet = $spreadsheet->getActiveSheet();$sheet->setCellValue('A1', 'Hello World!');$writer = new Xlsx($spreadsheet);$writer->save('file.xlsx');```4. 处理电子表格PHPSpreadsheet还可以轻松处理电子表格文件。

phpoffice 手册

phpoffice 手册

phpoffice 手册PHPOffice是一个开源的PHP库,用于处理和操作Microsoft Office文件,如Word文档、Excel电子表格和PowerPoint演示文稿。

它提供了一组简单易用的API,可以帮助开发人员读取、创建和修改Office文件。

PHPOffice库由一系列不同的组件组成,每个组件都专门用于处理不同类型的Office文件。

以下是一些常用的PHPOffice组件及其功能:1. PHPWord:用于创建和操作Word文档。

它提供了一系列API,可以添加文本、图片、表格、列表、样式和格式等元素到Word文档中。

还可以合并、拆分和转换Word文档。

2. PHPSpreadsheet:用于创建和操作Excel电子表格。

它支持读取和写入Excel文件,并提供了丰富的API,可以设置单元格样式、公式、图表和数据透视表等。

还可以导入和导出多种格式的Excel文件。

3. PHPPresentation:用于创建和操作PowerPoint演示文稿。

它可以添加幻灯片、文本、图片、形状、图表和动画等元素到演示文稿中。

还可以导入和导出多种格式的PowerPoint文件。

使用PHPOffice库非常简单。

首先,你需要在你的项目中安装PHPOffice库,可以通过Composer来安装。

然后,你可以使用相应的组件来处理Office文件。

例如,如果你想创建一个新的Word文档,你可以使用PHPWord组件的API来添加内容和样式。

如果你想读取一个Excel文件,你可以使用PHPSpreadsheet组件的API来读取和处理数据。

除了上述的主要组件外,PHPOffice还提供了其他一些辅助组件,用于处理PDF文件、HTML转换和图像处理等。

你可以根据你的具体需求选择适合的组件。

总的来说,PHPOffice是一个强大且易用的PHP库,可以帮助开发人员处理和操作Microsoft Office文件。

它提供了一系列功能丰富的组件,可以满足各种Office文件处理的需求。

利用PHPExcel读取Excel的数据和导出数据到Excel

利用PHPExcel读取Excel的数据和导出数据到Excel

利⽤PHPExcel读取Excel的数据和导出数据到ExcelPHPExcel是⼀个PHP类库,⽤来帮助我们简单、⾼效实现从Excel读取Excel的数据和导出数据到Excel。

也是我们⽇常开发中,经常会遇到的使⽤场景。

⽐如有个客户信息表,要批量导出发给同事,我们就可以⽤PHPExcel来快速实现。

同样,如果我们要利⽤短信群发接⼝去群发信息,PHPExcel可以快速导⼊客户信息,避免⼈⼯录⼊信息的⿇烦。

PHPExcel使⽤教程:⾸先下载PHPExcel下载好⽂件,解压可以得到如下⽂件:PHPExcel好了,现在我们就可以⽤PHPExcel愉快的读取和制作表格了!PHPExcel DEMO1:利⽤PHPExcel读取excel信息:我们在根⽬录创建⼀个名为read.php的⽂件来读取⽂档,创建⼀个test.xlsx的⽂件,⾥⾯写的信息如下:然后在read.php写以下代码:<?phpinclude ‘./Classes/PHPExcel/IOFactory.php';$inputFileName = ‘./test.xls';date_default_timezone_set(‘PRC');// 读取excel⽂件try {$inputFileType = PHPExcel_IOFactory::identify($inputFileName);$objReader = PHPExcel_IOFactory::createReader($inputFileType);$objPHPExcel = $objReader->load($inputFileName);} catch(Exception $e) {die(‘加载⽂件发⽣错误:”‘.pathinfo($inputFileName,PATHINFO_BASENAME).'”: ‘.$e->getMessage()); }// 确定要读取的sheet,什么是sheet,看excel的右下⾓,真的不懂去百度吧$sheet = $objPHPExcel->getSheet(0);$highestRow = $sheet->getHighestRow();$highestColumn = $sheet->getHighestColumn();// 获取⼀⾏的数据for ($row = 1; $row <= $highestRow; $row++){// Read a row of data into an array$rowData = $sheet->rangeToArray(‘A' . $row . ‘:' . $highestColumn . $row, NULL, TRUE, FALSE);//这⾥得到的rowData都是⼀⾏的数据,得到数据后⾃⾏处理,我们这⾥只打出来看看效果var_dump($rowData);echo “<br>”;}得到的数据:PHPexcel读取⽂件PHPExcel DEMO2:利⽤PHPExcel导出信息到excel:<?php/** Error reporting */error_reporting(E_ALL);ini_set('display_errors', TRUE);ini_set('display_startup_errors', TRUE);date_default_timezone_set('PRC');/** 引⼊PHPExcel */require_once dirname(__FILE__) . './Classes/PHPExcel.php';// 创建Excel⽂件对象$objPHPExcel = new PHPExcel();// 设置⽂档信息,这个⽂档信息windows系统可以右键⽂件属性查看$objPHPExcel->getProperties()->setCreator("作者简庆旺")->setLastModifiedBy("最后更改者")->setTitle("⽂档标题")->setSubject("⽂档主题")->setDescription("⽂档的描述信息")->setKeywords("设置⽂档关键词")->setCategory("设置⽂档的分类");//根据excel坐标,添加数据$objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', '你好')->setCellValue('B2', '世界')->setCellValue('C1', '你好')->setCellValue('D2', '世界');// 混杂各种符号, 编码为UTF-8$objPHPExcel->setActiveSheetIndex(0)->setCellValue('A4', 'Miscellaneous glyphs')->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç');$objPHPExcel->getActiveSheet()->setCellValue('A8',"你好世界");$objPHPExcel->getActiveSheet()->getRowDimension(8)->setRowHeight(-1);$objPHPExcel->getActiveSheet()->getStyle('A8')->getAlignment()->setWrapText(true);$value = "-ValueA\n-Value B\n-Value C";$objPHPExcel->getActiveSheet()->setCellValue('A10', $value);$objPHPExcel->getActiveSheet()->getRowDimension(10)->setRowHeight(-1);$objPHPExcel->getActiveSheet()->getStyle('A10')->getAlignment()->setWrapText(true); $objPHPExcel->getActiveSheet()->getStyle('A10')->setQuotePrefix(true);// 重命名⼯作sheet$objPHPExcel->getActiveSheet()->setTitle('第⼀个sheet');// 设置第⼀个sheet为⼯作的sheet$objPHPExcel->setActiveSheetIndex(0);// 保存Excel 2007格式⽂件,保存路径为当前路径,名字为export.xlsx$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');$objWriter->save( 'export.xlsx');// 保存Excel 95格式⽂件,,保存路径为当前路径,$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('export.xls');好了,执⾏后我们可以得到export.xls和export.xlsx。

PHPExcel开发手册

PHPExcel开发手册
PHPExcel Developer Documentation
Authorrten Balliauw 1.7.4 26 August 2010
1. Contents
PHPExcel Developer Documentation ............................................................................. 1 1. Contents ......................................................................................................... 2 2. Prerequisites.................................................................................................... 4
2.1. Software requirements ................................................................................. 4 2.2. Installation instructions ................................................................................ 4 2.3. Getting started .......................................................................................... 4 2.4. Useful links and tools ................................................................................... 4

php学习中文参考手册

php学习中文参考手册

本人本着免费的态度给广大学员创造免费的资料,鄙视收钱的资料,提供者:夜子色虽然夜子色这个名字现在还不出名,但是我想不久的将来,这个名字在网页设计界,在平面设计界将非常的厉害,因为我一直在努力!!!大家一起加油啊!!!PHP Array 简介php学习array 函数允许您对数组进行操作。

PHP 支持单维和多维的数组。

同时提供了用数据库查询结果来构造数组的函数。

安装array 函数是PHP 核心的组成部分。

无需安装即可使用这些函数。

PHP Array 函数PHP:指示支持该函数的最早的PHP 版本。

函数描述PHP array()创建数组。

3 array_change_key_case()返回其键均为大写或小写的数组。

4 array_chunk()把一个数组分割为新的数组块。

4 array_combine()通过合并两个数组来创建一个新数组。

5 array_count_values()用于统计数组中所有值出现的次数。

4 array_diff()返回两个数组的差集数组。

4 array_diff_assoc()比较键名和键值,并返回两个数组的差集数组。

4 array_diff_key()比较键名,并返回两个数组的差集数组。

5 array_diff_uassoc()通过用户提供的回调函数做索引检查来计算数组的差集。

5 array_diff_ukey()用回调函数对键名比较计算数组的差集。

5array_fill()用给定的值填充数组。

4 array_filter()用回调函数过滤数组中的元素。

4 array_flip()交换数组中的键和值。

4 array_intersect()计算数组的交集。

4 array_intersect_assoc()比较键名和键值,并返回两个数组的交集数组。

4 array_intersect_key()使用键名比较计算数组的交集。

5 array_intersect_uassoc()带索引检查计算数组的交集,用回调函数比较索引。

phpspreadsheet中文文档(三)计算引擎

phpspreadsheet中文文档(三)计算引擎

phpspreadsheet中⽂⽂档(三)计算引擎2019年10⽉11⽇13:59:52使⽤PhpSpreadsheet计算引擎执⾏公式计算由于PhpSpreadsheet表⽰内存中的电⼦表格,因此它还提供公式计算功能。

单元格可以是值类型(包含数字或⽂本),也可以是公式类型(包含可以求值的公式)。

例如,该公式=SUM(A1:A10)计算得出A1,A2,...,A10中的值之和。

要计算公式,可以调⽤包含公式⽅法的单元格getCalculatedValue(),例如:$spreadsheet->getActiveSheet()->getCell('E11')->getCalculatedValue();如果您在PhpSpreadsheet随附的发票演⽰中编写了以下代码⾏,则其评估值为“ 64”:PhpSpreadsheet公式解析器的另⼀个不错的功能是,它可以在插⼊/删除⾏/列时⾃动调整公式。

这是⼀个例⼦:您会看到单元格E11中包含的公式是“ SUM(E4:E9)”。

现在,当我编写以下代码⾏时,添加了两个新的产品线:$spreadsheet->getActiveSheet()->insertNewRowBefore(7, 2);你注意到了吗?以前的单元格E11中的公式(当我插⼊2个新⾏时为E13)更改为“ SUM(E4:E11)”。

同样,插⼊的单元格将复制前⼀个单元格的样式信息,就像Excel的⾏为⼀样。

请注意,您可以插⼊⾏和列。

计算缓存⼀旦计算引擎评估了单元格中的公式后,结果将被缓存,因此,如果您getCalculatedValue()再次调⽤同⼀单元格,则结果将从缓存中返回,⽽不是第⼆次评估公式。

这有助于提⾼性能,因为就性能和速度⽽⾔,评估公式是⼀项昂贵的操作。

但是,有时您可能不希望这样,也许您已经更改了基础数据,并且需要使⽤该新数据重新评估相同的公式。

hpEcel中文帮助手册课件p

hpEcel中文帮助手册课件p

Excel中文帮助手册1、设置excel的属性:创建人$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");最后修改人$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");标题$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");题目$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");描述$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");关键字$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");附,几个常用的使用方法。

复制代码代码示例:<?phpinclude '';include 'PHPExcel/Writer/';ls的创建一个excel$objPHPExcel = new PHPExcel();保存excel—2007格式$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);//或者$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); 非2007格式$objWriter->save("");直接输出到浏览器$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);header("Pragma: public");header("Expires: 0″);header("Cache-Control:must-revalidate, post-check=0, pre-check=0″); header("Content-Type:application/force-download");header("Content-Type:application/");header("Content-Type:application/octet-stream");header("Content-Type:application/download");;。

PHPExcel手册

PHPExcel手册

PHPExcel中文帮助手册∙vendor("PHPExcel.PHPExcel"); //如果这里提示类不存在,肯定是你文件夹名字不对。

∙$objPHPExcel = new \PHPExcel(); //这里要注意‘\’ 要有这个。

因为版本是3.1.2了。

∙$objWriter = new \PHPExcel_Writer_Excel5($objPHPExcel);//设置保存版本格式。

//接下来就是写数据到表格里面去/* 合并单元格*/$objPHPExcel->getActiveSheet()->mergeCells('A1:H1');$objPHPExcel->getActiveSheet()->mergeCells('A2:B2');$objPHPExcel->getActiveSheet()->mergeCells('C2:E2');$list =array(‘你从数据库查出来的的数据’)foreach ($list as $key => $value) {$i=$key+1; //表格是从1开始的$objPHPExcel->getActiveSheet()->setCellValue('A'.$i, $value['ID']);//设置A1单元格的内容$objPHPExcel->getActiveSheet()->setCellValue('B'.$i, $value['id']);//设置B1单元格的内容//以此类推,可以设置C D E F G}/*---------------------------------设置样式---------------------------------------- *//* 设置字体样式*/$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('微软雅黑');/* 设置字体大小*/$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20);/* 是否加粗*/$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);//垂直居中$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_ Alignment::VERTICAL_CENTER);//水平居中$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Styl e_Alignment::HORIZONTAL_CENTER);//填充背景样式$objPHPExcel->getActiveSheet()->getStyle('A4')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_ SOLID);//填充背景颜色$objPHPExcel->getActiveSheet()->getStyle('A4')->getFill()->getStartColor()->setARGB('FFD3D3 D3');//边框样式$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHP Excel_Style_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getLeft()->setBorderStyle(PHP Excel_Style_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getRight()->setBorderStyle(PH PExcel_Style_Border::BORDER_THIN);//边框颜色$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->getColor()->setAR GB('FF000000');$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getBottom()->getColor()->set ARGB('FF000000');$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getLeft()->getColor()->setARG B('FF000000');$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getRight()->getColor()->setAR GB('FF000000');//边框宽度$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(12); $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);//自动调整边框宽度$objPHPExcel->getActiveSheet()->getColumnDimension('A')-> setAutoSize (true); $objPHPExcel->getActiveSheet()->getColumnDimension('B')-> setAutoSize (true); $objPHPExcel->getActiveSheet()->getColumnDimension('C')-> setAutoSize (true);//接下来是下载这个表格了,在浏览器输出就好了header("Pragma: public");header("Expires: 0");header("Cache-Control:must-revalidate, post-check=0, pre-check=0");header("Content-Type:application/force-download");header("Content-Type:application/vnd.ms-execl");header("Content-Type:application/octet-stream");header("Content-Type:application/download");;header('Content-Disposition:attachment;filename= 文件名称.xls ');header("Content-Transfer-Encoding:binary");$objWriter->save('文件名称.xls');$objWriter->save('php://output');。

PHPExcel中文开发手册翻译版(2)

PHPExcel中文开发手册翻译版(2)

PHPExcel中⽂开发⼿册翻译版(2) 2016年8⽉18⽇12:45:14请注意这个是粗翻译版,仅供参考,不是精校版精校版后⾯才会更新PHPExcel开发者⽂档1.⽬录2. 4先决条件2.1。

软件要求42.2。

安装说明42.3。

⼊门42.4。

有⽤的链接和⼯具42.4.1。

的OpenXML / SpreadsheetML中42.4.2。

常见问题52.4.3。

6教程3.建筑73.1。

7⽰意性3.2。

延迟加载器73.3。

电⼦表格在内存中73.4。

读者和作家73.5。

流利的接⼝84.创建电⼦表格104.1。

该PHPExcel 10级4.1.1。

从⽂件加载10⼯作簿4.1.2。

创建⼀个新的⼯作簿104.2。

配置设置104.2.1。

电池缓存104.2.2。

语⾔/区域设置124.3。

从内存中清除13⼯作簿4.4。

13⼯作表4.4.1。

添加⼀个新的⼯作表144.4.2。

复制⼯作表144.4.3。

删除⼯作表144.5。

访问单元144.5.1。

通过坐标14设置单元格值4.5.2。

通过坐标15检索细胞4.5.3。

通过⾏和列15设置单元格值4.5.4。

由列和⾏15检索细胞4.5.5。

循环单元154.5.6。

使⽤值粘合剂,以⽅便数据录⼊164.6。

PHPExcel 17⾷谱4.6.1。

设置电⼦表格的元数据174.6.2。

设置电⼦表格的活动板174.6.3。

写⽇期或时间到单元格174.6.4。

写了公式的单元格184.6.5。

对式19区域设置4.6.6。

写在单元格中换⾏字符“\ n”(ALT +“回车”)204.6.7。

明确设置单元格的数据类型204.6.8。

⼀个细胞变成可点击的URL 204.6.9。

设置⼯作表的页⾯⽅向和⼤⼩204.6.10。

页⾯设置:缩放选项214.6.11。

页边距224.6.12。

⽔平中⼼页/垂直224.6.13。

设置⼯作表22的打印页眉和页脚4.6.14。

在⼀⾏或⼀列24设定打印中断4.6.15。

phpexcel 结果 公式

phpexcel 结果 公式

phpexcel 结果公式PHPExcel是一个用于在PHP中操作Excel文件的库。

如果你想要在PHPExcel中使用公式来计算结果,可以通过以下步骤来实现:1. 首先,你需要创建一个PHPExcel对象,并加载你要操作的Excel文件。

2. 然后,你可以选择要在哪个单元格中输入公式,通过PHPExcel的setCellValue方法来设置公式,例如,$objPHPExcel->getActiveSheet()->setCellValue('A1', '=SUM(B1:B10)')。

3. 接下来,你需要调用PHPExcel的calculate方法来计算公式的结果,例如,$objPHPExcel->getActiveSheet()->calculate();4. 最后,你可以通过PHPExcel的getCalculatedValue方法来获取计算后的结果,例如,$result = $objPHPExcel->getActiveSheet()->getCell('A1')->getCalculatedValue()。

需要注意的是,PHPExcel中的公式计算是基于Excel软件的公式引擎来实现的,因此可以支持Excel中常见的公式函数,如SUM、AVERAGE等。

另外,PHPExcel还提供了一些其他的方法来处理公式,比如getCalculatedValue()用于获取计算后的值,setCalculationCacheEnabled()用于启用或禁用公式计算缓存等。

总的来说,使用PHPExcel来处理Excel文件中的公式计算是相当方便和灵活的,可以满足大部分的需求。

希望这些信息能够帮助到你。

phpexcel_reader_excel2007的用法 -回复

phpexcel_reader_excel2007的用法 -回复

phpexcel_reader_excel2007的用法-回复标题:深入理解与使用phpexcel_reader_excel2007phpExcel_reader_excel2007是PHP中一个强大的库,主要用于读取Excel 2007 (.xlsx)格式的文件。

在数据处理、报表生成、数据分析等领域,这个库有着广泛的应用。

以下将详细解析phpexcel_reader_excel2007的用法,帮助你更好地理解和使用它。

一、安装phpexcel_reader_excel2007在开始使用phpexcel_reader_excel2007之前,首先需要进行安装。

由于phpexcel_reader_excel2007是PHPExcel库的一部分,所以我们需要先安装完整的PHPExcel库。

1. 使用Composer安装:如果你的项目中已经集成了Composer,那么可以通过以下命令来安装PHPExcel:composer require phpoffice/phpexcel2. 手动下载安装:如果你的项目中没有使用Composer,也可以通过手动下载的方式进行安装。

你可以从GitHub上下载最新的PHPExcel源代码,然后将其解压到你的项目中。

二、加载phpexcel_reader_excel2007安装完成后,我们需要在PHP代码中加载phpexcel_reader_excel2007。

以下是一个基本的加载示例:phprequire_once 'path/to/PHPExcel/IOFactory.php';这里我们引入了IOFactory类,它是PHPExcel中的一个工具类,可以帮助我们方便地读取和写入各种类型的电子表格文件。

三、读取Excel 2007文件接下来,我们将使用phpexcel_reader_excel2007来读取一个Excel 2007文件。

以下是一个基本的读取示例:php加载PHPExcel_IOFactory类require_once 'path/to/PHPExcel/IOFactory.php';定义要读取的Excel文件路径inputFileName = 'path/to/your/file.xlsx';使用IOFactory的createReader方法创建一个reader对象reader = PHPExcel_IOFactory::createReader('Excel2007');使用reader对象的load方法读取Excel文件spreadsheet = reader->load(inputFileName);获取工作表对象worksheet = spreadsheet->getActiveSheet();获取单元格数据data = worksheet->getCell('A1')->getValue();echo data;以上代码首先定义了要读取的Excel文件路径,然后使用IOFactory的createReader方法创建了一个reader对象,并指定了要读取的文件类型为Excel2007。

phpexcel_chart_dataseriesvalues 参数-概述说明以及解释

phpexcel_chart_dataseriesvalues 参数-概述说明以及解释

phpexcel_chart_dataseriesvalues 参数-概述说明以及解释1.引言1.1 概述在本文中,将会介绍关于PHPExcel中的ChartDataSeriesValues参数。

PHPExcel是一个用于读写Excel文件的PHP库,可以方便地生成、读取和修改Excel文件。

其中,ChartDataSeriesValues参数是用于创建图表数据的一个重要参数,可以指定图表数据的来源和格式。

本文将会首先介绍PHPExcel库的基本概念和用途,然后重点讨论ChartDataSeriesValues参数的作用和用法。

通过学习本文,读者将能够了解如何使用ChartDataSeriesValues参数来创建各种类型的图表数据,从而更加灵活和高效地处理Excel文件中的图表数据。

1.2 文章结构本文分为引言、正文和结论三个部分。

- 引言部分将对文章的背景和意义进行介绍,概述文章的主要内容和目的。

- 正文部分将详细介绍PHPExcel的基础知识,以及其中的ChartDataSeriesValues参数的含义和用法。

同时,将介绍如何使用ChartDataSeriesValues参数来创建图表数据,让读者能够更加深入地理解这一参数的作用和重要性。

- 结论部分将总结全文的主要内容和收获,并对ChartDataSeriesValues参数的应用推广和未来发展进行展望。

1.3 目的本文的主要目的是探讨在使用PHPExcel库中创建图表时如何有效地使用ChartDataSeriesValues参数。

通过深入了解ChartDataSeriesValues参数的作用和用法,读者可以更加熟练地操作PHPExcel库来生成各种类型的图表,并且能够根据自身需求灵活地调整图表的数据源。

在实际应用中,正确使用ChartDataSeriesValues参数可以帮助用户更好地控制图表数据的来源及格式,从而生成符合预期的图表效果。

phpExcel中文帮助手册

phpExcel中文帮助手册

phpExcel中文帮助手册1、设置excel的属性:创建人$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");最后修改人$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");标题$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX T est Document");题目$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX T est Document"); 描述$objPHPExcel->getProperties()->setDescription("T est document for Office 2007 XLSX, generated using PHP classes.");关键字$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");种类$objPHPExcel->getProperties()->setCategory("T est result file");设置当前的sheet$objPHPExcel->setActiveSheetIndex(0);设置sheet的name$objPHPExcel->getActiveSheet()->setTitle('Simple');设置单元格的值复制代码代码示例:$objPHPExcel->getActiveSheet()->setCellV alue('A1', 'String');$objPHPExcel->getActiveSheet()->setCellV alue('A2', 12);$objPHPExcel->getActiveSheet()->setCellV alue('A3', true);$objPHPExcel->getActiveSheet()->setCellV alue('C5', '=SUM(C2:C4)');$objPHPExcel->getActiveSheet()->setCellV alue('B8', '=MIN(B2:C5)');合并单元格复制代码代码示例:$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');分离单元格复制代码代码示例:$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28');保护cell复制代码代码示例:$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel');设置格式复制代码代码示例:// Set cell number formatsecho date('H:i:s') . " Set cell number formats\n";$objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Styl e_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4'),'E5:E13' );设置宽width复制代码代码示例:// Set column widths$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);设置font复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara');$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UND ERLINE_SINGLE);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_C olor::COLOR_WHITE);$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_C olor::COLOR_WHITE);$objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true);$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true);设置align复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_JUSTIFY);//垂直居中复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setV ertical(PHPExcel_Style_Alignm ent::VERTICAL_CENTER);设置column的border复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('E4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);设置border的color复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getBottom()->getColor()->setARGB(' FF993300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getTop()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getBottom()->getColor()->setARGB(' FF993300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getRight()->getColor()->setARGB('FF 993300');设置填充颜色复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOL ID);$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080'); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOL ID);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->getStartColor()->setARGB('FF808080');加图片复制代码代码示例:$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('Logo');$objDrawing->setDescription('Logo');$objDrawing->setPath('./images/officelogo.jpg');$objDrawing->setHeight(36);$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('Paid');$objDrawing->setDescription('Paid');$objDrawing->setPath('./images/paid.png');$objDrawing->setCoordinates('B15');$objDrawing->setOffsetX(110);$objDrawing->setRotation(25);$objDrawing->getShadow()->setVisible(true);$objDrawing->getShadow()->setDirection(45);$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());//处理中文输出问题需要将字符串转化为UTF-8编码,才能正常输出,否则中文字符将输出为空白,如下处理:$str = iconv('gb2312', 'utf-8', $str);或者可以写一个函数专门处理中文字符串:复制代码代码示例:function convertUTF8($str){if(empty($str)) return '';return iconv('gb2312', 'utf-8', $str);}//从数据库输出数据处理方式从数据库读取数据如:复制代码代码示例:$db = new Mysql($dbconfig);$sql = "SELECT * FROM 表名";$row = $db->GetAll($sql); // $row 为二维数组$count = count($row);for ($i = 2; $i <= $count+1; $i++) {$objPHPExcel->getActiveSheet()->setCellV alue('A' . $i, convertUTF8($row[$i-2][1]));$objPHPExcel->getActiveSheet()->setCellV alue('B' . $i, convertUTF8($row[$i-2][2]));$objPHPExcel->getActiveSheet()->setCellV alue('C' . $i, convertUTF8($row[$i-2][3]));$objPHPExcel->getActiveSheet()->setCellV alue('D' . $i, convertUTF8($row[$i-2][4]));$objPHPExcel->getActiveSheet()->setCellV alue('E' . $i, convertUTF8(date("Y-m-d", $row[$i-2][5]))); $objPHPExcel->getActiveSheet()->setCellV alue('F' . $i, convertUTF8($row[$i-2][6]));$objPHPExcel->getActiveSheet()->setCellV alue('G' . $i, convertUTF8($row[$i-2][7]));$objPHPExcel->getActiveSheet()->setCellV alue('H' . $i, convertUTF8($row[$i-2][8]));}在默认sheet后,创建一个worksheet在这里插入一段,之前脚本学堂也为大家介绍过几篇有关phpexcel的文章,有兴趣的朋友可以看看:使用PHPExcel判别和格式化Excel中的日期格式的例子phpexcel导出excel的颜色与网页中颜色不一致的解决方法CI中使用PHPExcel导出数据到Excel复制代码代码示例:echo date('H:i:s') . " Create new Worksheet object\n";$objPHPExcel->createSheet();$objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');$objWriter-save('php://output');附,几个常用的使用方法。

PHPExcel中文使用手册详解

PHPExcel中文使用手册详解

PHPExcel中⽂使⽤⼿册详解安装composer require "phpoffice/phpexcel"使⽤:已⾃动加载实例化⼀、$objPHPExcel = new \PHPExcel();/* 以下是⼀些设置,什么作者标题啊之类的 */$objPHPExcel->getProperties()->setCreator("实习⽹");$objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', ('序号'))->setCellValue('B1', ('订单号'))->setCellValue('C1', ('职位名称'))->setCellValue('D1', ('供职公司'))->setCellValue('E1', ('申请时间'))->setCellValue('F1', ('⽤户名'))->setCellValue('G1', ('订单状态'))->setCellValue('H1', ('总价'));foreach ($orderList as $k => $v) {$num = $k + 2;$objPHPExcel->setActiveSheetIndex(0)//Excel的第A列,uid是你查出数组的键值,下⾯以此类推->setCellValue('A' . $num, $v['id'])->setCellValue('B' . $num, ($v['order_number']))->setCellValue('C' . $num, ($v['job_name']))->setCellValue('D' . $num, ($v['company_name']))->setCellValue('E' . $num, $v['addtime'])->setCellValue('F' . $num, ($v['username']))->setCellValue('G' . $num, ($v['status']))->setCellValue('H' . $num, $v['service_money']);}unset($num);static $shxi = '订单';$objPHPExcel->getActiveSheet()->setTitle('Member');$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);$objPHPExcel->setActiveSheetIndex(0);header('Content-Type: application/vnd.ms-excel');header('Content-Disposition: attachment;filename="'.$shxi. date('Ymd',time()) . '.xls"');header('Cache-Control: max-age=0');$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('php://output');exit;。

php中使用PHPExcel读写excel(xls)文件的方法

php中使用PHPExcel读写excel(xls)文件的方法

php中使⽤PHPExcel读写excel(xls)⽂件的⽅法本⽂实例讲述了PHP中使⽤PHPExcel读写excel(xls)⽂件的⽅法,⾮常实⽤。

分享给⼤家供⼤家参考之⽤。

具体⽅法如下:1、读取xls⽂件内容<?php//向xls⽂件写⼊内容error_reporting(E_ALL);ini_set('display_errors', TRUE);include 'Classes/PHPExcel.php';include 'Classes/PHPExcel/IOFactory.php';//$data:xls⽂件内容正⽂//$title:xls⽂件内容标题//$filename:导出的⽂件名//$data和$title必须为utf-8码,否则会写⼊FALSE值function write_xls($data=array(), $title=array(), $filename='report'){$objPHPExcel = new PHPExcel();//设置⽂档属性,设置中⽂会产⽣乱码,需要转换成utf-8格式!!// $objPHPExcel->getProperties()->setCreator("云舒")// ->setLastModifiedBy("云舒")// ->setTitle("产品URL导出")// ->setSubject("产品URL导出")// ->setDescription("产品URL导出")// ->setKeywords("产品URL导出");$objPHPExcel->setActiveSheetIndex(0);$cols = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';//设置标题for($i=0,$length=count($title); $i<$length; $i++) {//echo $cols{$i}.'1';$objPHPExcel->getActiveSheet()->setCellValue($cols{$i}.'1', $title[$i]);}//设置标题样式$titleCount = count($title);$r = $cols{0}.'1';$c = $cols{$titleCount}.'1';$objPHPExcel->getActiveSheet()->getStyle("$r:$c")->applyFromArray(array('font' => array('bold' => true),'alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT,),'borders' => array('top' => array('style' => PHPExcel_Style_Border::BORDER_THIN)),'fill' => array('type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR,'rotation' => 90,'startcolor' => array('argb' => 'FFA0A0A0'),'endcolor' => array('argb' => 'FFFFFFFF'))));$i = 0;foreach($data as $d) { //这⾥⽤foreach,⽀持关联数组和数字索引数组$j = 0;foreach($d as $v) { //这⾥⽤foreach,⽀持关联数组和数字索引数组$objPHPExcel->getActiveSheet()->setCellValue($cols{$j}.($i+2), $v);$j++;} $i++;}// ⽣成2003excel格式的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');}$array = array(array(1111,'名称','品牌','商品名','https://'),array(1111,'名称','品牌','商品名','https://'),array(1111,'名称','品牌','商品名','https://'),array(1111,'名称','品牌','商品名','https://'),array(1111,'名称','品牌','商品名','https://'),);write_xls($array,array('商品id','供应商名称','品牌','商品名','URL'),'report');>2、向xls⽂件写内容<?php//获取数据库数据(mysqli预处理学习)$config = array('DB_TYPE'=>'mysql','DB_HOST'=>'localhost','DB_NAME'=>'test','DB_USER'=>'root','DB_PWD'=>'root','DB_PORT'=>'3306',);function getProductIdByName($name) {global $config;$id = false;$mysqli = new mysqli($config['DB_HOST'], $config['DB_USER'], $config['DB_PWD'], $config['DB_NAME']); if(mysqli_connect_error()) { //兼容 < php5.2.9 OO way:$mysqli->connect_errordie("连接失败,错误码:".mysqli_connect_errno()."错误信息:".mysqli_connect_error());}//设置连接数据库的编码,不要忘了设置$mysqli->set_charset("gbk");//中⽂字符的编码要与数据库⼀致,若没设置,结果为null$name = iconv("utf-8", "gbk//IGNORE", $name);if($mysqli_stmt = $mysqli->prepare("select id from 137_product where name like ?")) {$mysqli_stmt->bind_param("s", $name);$mysqli_stmt->execute();$mysqli_stmt->bind_result($id);$mysqli_stmt->fetch();$mysqli_stmt->close();}$mysqli->close();return $id; //得到的是gbk码(同数据库编码)}$id = getProductIdByName('%伊奈卫浴伊奈分体座便器%');var_dump($id);>希望本⽂所述对⼤家的PHP程序设计有所帮助。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

phpExcel中文帮助手册1、设置excel的属性:创建人$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");最后修改人$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");标题$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX T est Document");题目$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX T est Document"); 描述$objPHPExcel->getProperties()->setDescription("T est document for Office 2007 XLSX, generated using PHP classes.");关键字$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");种类$objPHPExcel->getProperties()->setCategory("T est result file");设置当前的sheet$objPHPExcel->setActiveSheetIndex(0);设置sheet的name$objPHPExcel->getActiveSheet()->setTitle('Simple');设置单元格的值复制代码代码示例:$objPHPExcel->getActiveSheet()->setCellV alue('A1', 'String');$objPHPExcel->getActiveSheet()->setCellV alue('A2', 12);$objPHPExcel->getActiveSheet()->setCellV alue('A3', true);$objPHPExcel->getActiveSheet()->setCellV alue('C5', '=SUM(C2:C4)');$objPHPExcel->getActiveSheet()->setCellV alue('B8', '=MIN(B2:C5)');合并单元格复制代码代码示例:$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');分离单元格复制代码代码示例:$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28');保护cell复制代码代码示例:$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel');设置格式复制代码代码示例:// Set cell number formatsecho date('H:i:s') . " Set cell number formats\n";$objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Styl e_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4'),'E5:E13' );设置宽width复制代码代码示例:// Set column widths$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);设置font复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara');$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UND ERLINE_SINGLE);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_C olor::COLOR_WHITE);$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_C olor::COLOR_WHITE);$objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true);$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true);设置align复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alig nment::HORIZONTAL_JUSTIFY);//垂直居中复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setV ertical(PHPExcel_Style_Alignm ent::VERTICAL_CENTER);设置column的border复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);$objPHPExcel->getActiveSheet()->getStyle('E4')->getBorders()->getTop()->setBorderStyle(PHPExcel_S tyle_Border::BORDER_THIN);设置border的color复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getBottom()->getColor()->setARGB(' FF993300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getTop()->getColor()->setARGB('FF9 93300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getBottom()->getColor()->setARGB(' FF993300');$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getRight()->getColor()->setARGB('FF 993300');设置填充颜色复制代码代码示例:$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOL ID);$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080'); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOL ID);$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->getStartColor()->setARGB('FF808080');加图片复制代码代码示例:$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('Logo');$objDrawing->setDescription('Logo');$objDrawing->setPath('./images/officelogo.jpg');$objDrawing->setHeight(36);$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('Paid');$objDrawing->setDescription('Paid');$objDrawing->setPath('./images/paid.png');$objDrawing->setCoordinates('B15');$objDrawing->setOffsetX(110);$objDrawing->setRotation(25);$objDrawing->getShadow()->setVisible(true);$objDrawing->getShadow()->setDirection(45);$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());//处理中文输出问题需要将字符串转化为UTF-8编码,才能正常输出,否则中文字符将输出为空白,如下处理:$str = iconv('gb2312', 'utf-8', $str);或者可以写一个函数专门处理中文字符串:复制代码代码示例:function convertUTF8($str){if(empty($str)) return '';return iconv('gb2312', 'utf-8', $str);}//从数据库输出数据处理方式从数据库读取数据如:复制代码代码示例:$db = new Mysql($dbconfig);$sql = "SELECT * FROM 表名";$row = $db->GetAll($sql); // $row 为二维数组$count = count($row);for ($i = 2; $i <= $count+1; $i++) {$objPHPExcel->getActiveSheet()->setCellV alue('A' . $i, convertUTF8($row[$i-2][1]));$objPHPExcel->getActiveSheet()->setCellV alue('B' . $i, convertUTF8($row[$i-2][2]));$objPHPExcel->getActiveSheet()->setCellV alue('C' . $i, convertUTF8($row[$i-2][3]));$objPHPExcel->getActiveSheet()->setCellV alue('D' . $i, convertUTF8($row[$i-2][4]));$objPHPExcel->getActiveSheet()->setCellV alue('E' . $i, convertUTF8(date("Y-m-d", $row[$i-2][5]))); $objPHPExcel->getActiveSheet()->setCellV alue('F' . $i, convertUTF8($row[$i-2][6]));$objPHPExcel->getActiveSheet()->setCellV alue('G' . $i, convertUTF8($row[$i-2][7]));$objPHPExcel->getActiveSheet()->setCellV alue('H' . $i, convertUTF8($row[$i-2][8]));}在默认sheet后,创建一个worksheet在这里插入一段,之前脚本学堂也为大家介绍过几篇有关phpexcel的文章,有兴趣的朋友可以看看:使用PHPExcel判别和格式化Excel中的日期格式的例子phpexcel导出excel的颜色与网页中颜色不一致的解决方法CI中使用PHPExcel导出数据到Excel复制代码代码示例:echo date('H:i:s') . " Create new Worksheet object\n";$objPHPExcel->createSheet();$objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');$objWriter-save('php://output');附,几个常用的使用方法。

相关文档
最新文档