PHPExcel导入导出常用方法总结

这篇博客总结了使用PHPExcel扩展在PHP中导出和导入Excel数据的方法。内容包括导出步骤、样式控制、添加图片和标注,以及部分导入文件的策略。同时,提到了PHPExcel对内存占用大的问题,并给出了应对示例。
摘要由CSDN通过智能技术生成

最近公司后台管理系统需求,要用PHP导出excel表格数据,所以特整理了一下常用的方法供大家参考:

PHPExcel扩展包地址:https://github.com/wanqianworld/phpexcel-1.8

大致的分为几个部分:

一、导出的方法及步骤

1.引入PHPExcel文件:require_once("../Classes/PHPExcel.php");
2.实例化PHPExcel:$ObjPHPExcel = new PHPExcel();
3.获取当前工作sheet:$ObjPHPExcel->getACtiveSheet();
4.给当前工作表设置名称:$ObjPHPExcel->setTitle('sheet表名称');
5.添加数据,赋值:$ObjPHPExcel->setCellValue('单元格坐标','值');
6.按照指定格式生成excel文件: $ObjPHPExcel->PHPExcel_IOFactory::createWriter($ObjPHPExcel,'Excal5');
7.保存Excel文件:$ObjPHPExcel->save('保存路径及文件名');
8.如果要将生成的Excel文件输出到浏览器:
        Excel5需要添加以下代码:
         header("Content-type:application/vnd.ms-excel");//输出Excel03文件
         header("Content-Disposition:attachment;filename=test.xls');
         header("Content-Control:max-age = 0");
        $ObjPHPExcel->save("php://output");
        Excel7需要添加以下代码:
         header("Content-type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");//输出Excel07文件
         header("Content-Disposition:attachment;filename=test.xlsx');//浏览器输出文件名称
         header("Content-Control:max-age = 0");//禁止浏览器缓存
        $ObjPHPExcel->save("php://output");

二、Excel样式控制

1.合并单元格:$ObjPHPExcel->getActiveSheet()->mergeCells('A18:E22');
2.拆分单元格:$ObjPHPExcel->getActiveSheet()-
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Laravel框架实现PHPExcel导入导出功能非常简单。首先,我们需要安装PHPExcel库。可以通过Composer来安装,只需在终端中运行以下命令: ``` composer require phpoffice/phpexcel ``` 安装完成之后,在Laravel的控制器中,我们可以使用PHPExcel的相关类来实现导入导出功能。 要导出Excel文件,我们可以先创建一个PHPExcel对象,并设置一些基本的属性,例如文件名、作者等。然后,我们可以创建一个工作表,并设置一些表头信息。接下来,我们可以遍历需要导出的数据,将数据逐行写入工作表中。最后,我们可以使用PHPExcelWriter将工作表保存为Excel文件。下面是一个示例代码: ```php use PHPExcel; use PHPExcel_IOFactory; class ExportController extends Controller { public function exportData() { $objPHPExcel = new PHPExcel(); // 设置文件属性 $objPHPExcel->getProperties() ->setCreator("Your Name") ->setLastModifiedBy("Your Name") ->setTitle("Export Data") ->setSubject("Export Data") ->setDescription("Export Data"); $objPHPExcel->setActiveSheetIndex(0); $sheet = $objPHPExcel->getActiveSheet(); // 设置表头信息 $sheet->setCellValue('A1', 'Column 1') ->setCellValue('B1', 'Column 2') ->setCellValue('C1', 'Column 3'); // 导出数据 $data = [ ['Data 1', 'Data 2', 'Data 3'], ['Data 4', 'Data 5', 'Data 6'], ]; foreach ($data as $key => $value) { $row = $key + 2; $sheet->setCellValue('A' . $row, $value[0]) ->setCellValue('B' . $row, $value[1]) ->setCellValue('C' . $row, $value[2]); } // 导出Excel $objPHPExcel->getActiveSheet()->setTitle('Sheet 1'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('export.xlsx'); } } ``` 要导入Excel文件,我们可以先创建一个PHPExcel对象,并使用`load`方法加载Excel文件。然后,我们可以通过`getActiveSheet`方法获取工作表,并使用`getCell`方法获取单元格的值。接下来,我们可以遍历工作表的行和列,将数据存储到数组中。最后,我们可以对获取到的数据进行相关的处理。下面是一个示例代码: ```php use PHPExcel; use PHPExcel_IOFactory; class ImportController extends Controller { public function importData() { $objPHPExcel = PHPExcel_IOFactory::load('import.xlsx'); $sheet = $objPHPExcel->getActiveSheet(); $data = []; foreach ($sheet->getRowIterator() as $row) { $rowData = []; foreach ($row->getCellIterator() as $cell) { $rowData[] = $cell->getValue(); } $data[] = $rowData; } // 对导入的数据进行处理 // ... return $data; } } ``` 通过以上的代码,我们就可以轻松地在Laravel框架中实现PHPExcel导入导出功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值