要使用纯PHP创建或编辑Excel电子表格,我们将使用PHPExcel库,它可以读写许多电子表格格式,包括xls,xlsx,ods和csv。在我们继续之前,仔细检查您的服务器上是否有PHP 5.2或更高版本以及安装了以下PHP扩展:php_zip,php_xml和php_gd2。

创建电子表格

创建电子表格是PHP应用程序中最常见的用例之一,用于将数据导出到Excel电子表格。查看以下代码,了解如何使用PHPExcel创建示例Excel电子表格:

// Include PHPExcel library and create its object
require('PHPExcel.php');$phpExcel = new PHPExcel;// Set default font to Arial
$phpExcel->getDefaultStyle()->getFont()->setName('Arial');// Set default font size to 12
$phpExcel->getDefaultStyle()->getFont()->setSize(12);// Set spreadsheet properties – title, creator and description
$phpExcel ->getProperties()->setTitle("Product list");
$phpExcel ->getProperties()->setCreator("Voja Janjic");
$phpExcel ->getProperties()->setDescription("PHP Excel spreadsheet testing.");// Create the PHPExcel spreadsheet writer object
// We will create xlsx file (Excel 2007 and above)
$writer = PHPExcel_IOFactory::createWriter($phpExcel, "Excel2007");// When creating the writer object, the first sheet is also created
// We will get the already created sheet
$sheet = $phpExcel ->getActiveSheet();// Set sheet title
$sheet->setTitle('My product list');// Create spreadsheet header
$sheet ->getCell('A1')->setValue('Product');
$sheet ->getCell('B1')->setValue('Quanity');
$sheet ->getCell('C1')->setValue('Price');// Make the header text bold and larger
$sheet->getStyle('A1:D1')->getFont()->setBold(true)->setSize(14);// Insert product data// Autosize the columns
$sheet->getColumnDimension('A')->setAutoSize(true);
$sheet->getColumnDimension('B')->setAutoSize(true);
$sheet->getColumnDimension('C')->setAutoSize(true);// Save the spreadsheet
$writer->save('products.xlsx');

如果要下载电子表格而不是将其保存到服务器,请执行以下操作:

header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="file.xlsx"');
header('Cache-Control: max-age=0');
$writer->save('php://output');

编辑现有电子表格

在PHP中编辑电子表格与创建电子表格类似:

// Include PHPExcel library and create its object
require('PHPExcel.php');// Load an existing spreadsheet
$phpExcel = PHPExcel_IOFactory::load('products.xlsx');// Get the first sheet
$sheet = $phpExcel ->getActiveSheet();// Remove 2 rows starting from the row 2
$sheet ->removeRow(2,2);// Insert one new row before row 2
$sheet->insertNewRowBefore(2, 1);// Create the PHPExcel spreadsheet writer object
// We will create xlsx file (Excel 2007 and above)
$writer = PHPExcel_IOFactory::createWriter($phpExcel, "Excel2007");// Save the spreadsheet
$writer->save('products.xlsx');

准备电子表格进行打印

要准备电子表格进行打印,我们将设置纸张方向,尺寸和边距:

$sheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
$sheet -> getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
$sheet->getPageMargins()->setTop(1);
$sheet ->getPageMargins()->setRight(0.75);
$sheet ->getPageMargins()->setLeft(0.75);
$sheet ->getPageMargins()->setBottom(1);

将PHPExcel与Laravel一起使用

PHPExcel库也可以在Laravel框架中使用。查看以下PHP包(此处)并通过Composer安装它。完成安装步骤后,您可以使用以下代码将数据从数据库导出到Excel电子表格中:

Excel::create('Products', function($excel) {// Set the title$excel->setTitle('Product list');// Set the creator$excel->setCreator('Voja Janjic');// Set description$excel->setDescription('PHP Excel spreadsheet testing');$excel->sheet('Products', function($sheet) {// Get data from the database$products = Product::all(); // Generate header row$sheet->row(1, array('ID','Product','Price','Quantity',                     ));// Generate data rows   $i = 2;    foreach($products as $product) {                                $sheet->row($i, array($product->product_id,$product->product_name,$product->price,$variety->quantity,                 ));$i++;}});})->export('xlsx');

下一步

PHPExcel提供了许多本教程中未提及的功能,例如函数,计算和图表。

转载于:https://blog.51cto.com/13865063/2174502

在PHP中创建和编辑Excel电子表格相关推荐

  1. php 上传 excel xlsx_在PHP中创建和编辑Excel电子表格

    要使用纯PHP创建或编辑Excel电子表格,我们将使用PHPExcel库,该库可以读取和写入许多电子表格格式,包括xls,xlsx,ods和csv.在继续之前,请仔细检查服务器上是否装有PHP 5.2 ...

  2. php怎么在线建excel,PHP中创建和编辑Excel表格的方法

    PHP中创建和编辑Excel表格的方法 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  PHP中创建和编辑Excel表格的方法.txt ] (友情提示:右键点上行 ...

  3. 3分钟学会在 ASP.NET MVC 中创建、读取和编辑 Excel 电子表格

    在本文中,您将学习如何在ASP.NET MVC 应用程序中创建.读取和编辑 Excel 电子表格.为此,我们将创建一个由功能丰富的网格控件组成的电子表格应用程序,用于显示和编辑 Excel 文件,如下 ...

  4. Aspose.Cells使用教程:使用 .NET 在 Linux 上创建或编辑 Excel 文件

    如今自动化解决方案的出现使得电子表格自动化在各个行业中都很流行.电子表格文档是从 Web 或桌面解决方案中以编程方式创建和操作的.因此,本文介绍了如何使用 .NET 在 Linux 平台上创建 Exc ...

  5. linux中编辑pdf文件,如何在Ubuntu中创建和编辑PDF文件

    在打印,共享和通过电子邮件发送文档(尤其是大型文档)时,PDF或可移植文档格式通常是我们的首选.对于Windows和MacOS,您可能非常熟悉,也依赖于广泛使用的Acrobat产品来进行pdf创建,查 ...

  6. thinkphp3.1.3 getshell_C# / VB.NET 在PPT中创建、编辑PPT SmartArt图形的方法详解_C#教程...

    本文介绍通过C#和程序代码来创建和编辑PPT文档中的SmartArt图形.文中将分两个操作示例来演示创建和编辑结果. 使用工具:Spire.Presentation for .NET hotfix 5 ...

  7. vb treeview 展开子节点_C# / VB.NET 在PPT中创建、编辑PPT SmartArt图形

    本文介绍通过C#和http://VB.NET程序代码来创建和编辑PPT文档中的SmartArt图形.文中将分两个操作示例来演示创建和编辑结果. 使用工具:Spire.Presentation for ...

  8. C# / VB.NET 在PPT中创建、编辑PPT SmartArt图形

    本文介绍通过C#和VB.NET程序代码来创建和编辑PPT文档中的SmartArt图形.文中将分两个操作示例来演示创建和编辑结果. 使用工具:Spire.Presentation for .NET ho ...

  9. 如何在 Illustrator 中创建和编辑图层?

    欢迎观看Illustrator教程,小编带大家学习Illustrator 2022的基本工具和使用技巧,了解如何在 Illustrator 图层 面板中创建新图层以组织项目中的内容. 学习使用层可以使 ...

最新文章

  1. python新建文件夹口令_3分钟学会一段Python代码脚本,轻松实现破解FTP密码口令...
  2. 2017-01-03
  3. Apache(httpd)配置--用户认证,域名跳转和访问日志配置
  4. Java动态代理代码快速上手
  5. Clipboard还能玩出花
  6. repeater 时间格式化
  7. mysql分页插件springboot_SpringBoot--使用Mybatis分页插件
  8. 如何获得完美的调色板?完美的配色素材专辑拿走!
  9. shell取得文件行数6法
  10. 汉诺塔问题(递归之路)
  11. 小学计算机键盘的初步认识教案,小学三年级信息技术--认识键盘教学设计(宋艳)[小编整理]...
  12. android 性能测试iozone篇
  13. 用python画小兔子_用Python画一只兔子——turtle库circle画圆函数的详细用法介绍
  14. docker进阶:自定义镜像、网络架构(二)
  15. java课设迷宫游戏_Java编写迷宫小游戏
  16. 如何用 Python 编写 Alfred Workflow
  17. java项目编码设置
  18. [总结]视频质量评价技术零基础学习方法
  19. Bos物流项目之在线下单流程图
  20. 在线测试php代码,Php代码 - 在线打字测试(dazi.kukuw.com)

热门文章

  1. 四年磨一剑,机械出身的我是如何拿到蚂蚁金服 Offer 的!
  2. 梦见男朋友和别的女生逛街,第一反应亮了... | 每日趣闻
  3. 程序员哪个时间敲代码效率最高?| 每日趣闻
  4. Java B2B2C o2o多用户商城 springcloud架-企业云架构common-service代码结构分析
  5. soapUi 接口测试
  6. 建筑工程的发展、未来那个职业将会兴起!
  7. React事件系统整理
  8. webstorm更改scss输出路径
  9. MySQL创建相同表和数据命令
  10. 小程序自定义分享事件及回调函数