寒窗轩,寒川的个人网络博客,记录互联网事,学习网络编程、分享工作经验、人生感悟,包括但不限于程序代码、数据库、Office办公、随笔等内容。

PHP以Excel模板填充数据并生成新的Excel文件

遇到这个一个问题,需要生成带水印的Excel文件,具体思路如下:先设置一个调好格式的Excel文件作为模板,再用PHP以模板文件填充,并生成新的Excel文件,这样新的文件就和模板文件格式一致。程序用到了PhpSpreadsheet,步骤如下:

1、下载PhpSpreadsheet扩展,命令:

composer require phpoffice/phpspreadsheet

至于怎么安装composer,以及怎么设置国内镜像等问题本文不着讨论。

2、phpspreadsheet安装完成后就直接上代码:

<?php
require 'vendor/autoload.php';

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

//指定模板文件所在位置
$template = 'template.xlsx';

$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($template);

//将活动工作表索引设置为第一个工作表:
$spreadsheet->setActiveSheetIndex(0);
//获取活动工作表
$worksheet = $spreadsheet->getActiveSheet();
//填充数据
$worksheet->getCell('A2')->setValue('1');
$worksheet->getCell('B2')->setValue('张三');
$worksheet->getCell('C2')->setValue('项目');
$worksheet->getCell('D2')->setValue('项目');
$worksheet->getCell('E2')->setValue('项目');
$worksheet->getCell('F2')->setValue('项目');
//继续填充数据
$worksheet->getCell('A3')->setValue('2');
$worksheet->getCell('B3')->setValue('李四');
$worksheet->getCell('C3')->setValue('项目');
$worksheet->getCell('D3')->setValue('项目');
$worksheet->getCell('E3')->setValue('项目');
$worksheet->getCell('F3')->setValue('项目');
//将填充好数据的工作表保存
$writer = new Xlsx($spreadsheet);
$writer->save('newfile.xlsx');

程序运行截图如下:

模板文件效果

模板文件效果

生成的文件效果

生成的文件效果

文章写得不错?我是土豪我要在线打赏!
在线打赏

昵称:

验证码:验证码

评论:

文章分类
系统
程序
数据
Office
随笔
热门文章
请不要奇怪,为什么最近博客的文章是几年前的内容
Excel动态引用各表格指定单元格数据
开篇第一章
ubuntu24.04无法安装向日葵,提示依赖libgconf-2-4怎么办?
如何利用python修改文件的创建时间,修改时间,访问时间
发现一个好网站——春燕文档
ubuntu24.04安装网易云音乐
Ubuntu22.04中用thunar替换默认文件管理器,提示无法启动“TerminalEmulator“的首选应用程序
MySQL如何按每个分类查询10条数据,即MySQL如何每个分类查询10条数据
python读取旧的Excel文件的数据到新的Excel表中
文章推荐
免责声明
关于博主
开篇第一章
随机推荐
超酷绚的Excel点选变色,自动求合功能
cn玉米即将叫停?!
封装一个php发QQ微博的类。
本站有自己的域名了
CentOS无法删除文件怎么办
win10华硕fl5900u笔记本开机进入桌面后转圈卡死怎么办
xhtml页面中用什么来替换marquee标签
宝宝日志-宝宝明天就能看到你了
emlog博客系统升级至3.50
如何让php,asp页面自动运行?
友情连接
春燕网络
谢润的博客