首页
学习
活动
专区
圈层
工具
发布

php生成excel完整实例代码

PHP生成Excel文件可以使用多种库,其中最流行的是PHPExcelPhpSpreadsheetPhpSpreadsheetPHPExcel的继任者,提供了更好的性能和更多的功能。以下是使用PhpSpreadsheet库生成Excel文件的完整实例代码:

安装PhpSpreadsheet库

首先,你需要通过Composer安装PhpSpreadsheet库:

代码语言:txt
复制
composer require phpoffice/phpspreadsheet

生成Excel文件的示例代码

代码语言:txt
复制
<?php
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

// 创建一个新的Spreadsheet对象
$spreadsheet = new Spreadsheet();

// 获取活动工作表
$sheet = $spreadsheet->getActiveSheet();

// 设置单元格的值
$sheet->setCellValue('A1', 'Hello World !');
$sheet->setCellValue('A2', '123');
$sheet->setCellValue('B2', '456');

// 合并单元格
$sheet->mergeCells('C1:D2');

// 设置单元格样式
$styleArray = [
    'font' => [
        'bold' => true,
    ],
    'alignment' => [
        'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER,
    ],
];

$sheet->getStyle('C1')->applyFromArray($styleArray);

// 添加数据表
$data = [
    ['Name', 'Age', 'Country'],
    ['John', 25, 'USA'],
    ['Jane', 22, 'UK'],
    ['Chris', 30, 'Australia'],
];

$sheet->fromArray($data, null, 'A4');

// 创建写入器对象
$writer = new Xlsx($spreadsheet);

// 写入文件
$writer->save('hello_world.xlsx');

echo 'Excel file created successfully.';
?>

代码解释

  1. 引入依赖:通过Composer引入PhpSpreadsheet库。
  2. 创建Spreadsheet对象:使用Spreadsheet类创建一个新的Excel文件。
  3. 获取活动工作表:获取当前活动的工作表。
  4. 设置单元格的值:使用setCellValue方法设置单元格的值。
  5. 合并单元格:使用mergeCells方法合并单元格。
  6. 设置单元格样式:使用getStyleapplyFromArray方法设置单元格的样式。
  7. 添加数据表:使用fromArray方法将数组数据添加到工作表中。
  8. 创建写入器对象:使用Xlsx类创建一个写入器对象。
  9. 写入文件:使用save方法将Excel文件保存到本地。

应用场景

  • 数据导出:将数据库中的数据导出为Excel文件,方便用户查看和编辑。
  • 报表生成:生成各种类型的报表,如销售报表、财务报表等。
  • 数据备份:将重要数据备份为Excel文件,防止数据丢失。

常见问题及解决方法

  1. Composer安装失败
    • 确保Composer已正确安装。
    • 检查网络连接,确保能够访问Composer仓库。
    • 尝试使用composer install --no-scripts跳过脚本执行。
  • 文件保存失败
    • 检查文件路径是否正确,确保有写权限。
    • 确保PHP配置文件(php.ini)中的open_basedir设置允许写入目标目录。
  • 单元格样式不生效
    • 确保样式数组格式正确。
    • 确保样式应用到正确的单元格范围。

通过以上步骤和代码示例,你可以轻松地在PHP中生成Excel文件,并解决常见的技术问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • WordPress免插件生成完整站点地图(sitemap.xml)的php代码

    而免插件生成 sitemap.xml,网络上也早就有了纯代码生成的方法。 一直以来,张戈博客都是用 DX-SEO 这个很好用的中文 SEO 插件生成的 sitemap。...今天整理电脑文件时,看到了以前收藏的生成 sitemap.xml 的 php 脚本,就随手打开看了看,发现这个代码只能生成主页和文章页的 sitemap。...感觉有点缺憾,反正今天也是闲着,就动手改造了一番,让这个代码更加完善,可以同时生成首页、文章、单页面、分类和标签的 sitemap! 一、PHP 代码 php require('....php  } /* 标签循环结束 */ ?> 将以上代码保存为 sitemap.php,传到网站根目录。...②、代码使用很简单,可以根据需要增减内容,比如觉得标签不应该出现在 sitemap 里面的,可以将标签部分的 php 代码删除即可,但一定要注意不要误删除结尾的标签。

    2.5K50

    PHP使用swagger-php自动生成api文档(详细附上完整例子)

    thinkphp5结合swagger自动生成接口文档 整体介绍 swagger-php、swagger-ui、swagger-editor swagger-ui:主要就是放到tp项目public目录下...,配置yaml文件url后访问可以展示swagger的主页面 swagger-php:将有swagger规定注释的php文件打包生成一个yaml文件 swagger-editor:就是可以直接左侧在线写...安装swagger-php 在你的tp项目目录下执行composer命令: composer require zircote/swagger-php 提示安装成功后会在tp项目的verdor中生成一个...因为生成yaml文件比较难看懂,所以使用的生成json的,就是安装swagger-php版本换一下,执行的步骤是一样的,只是生成的yaml文件换成了json ?...下面是另一个例子: - &showell Steve - Clark - Brian - Oren - *showell 转为 JavaScript 代码如下: [ 'Steve', 'Clark

    9.7K20
    领券