php - 使用 PhpSpreadsheet 写入 Excel 文件
问题描述
我有一个 php 代码,每当用户单击确定的按钮时都会触发该代码。该代码基本上在同一个目录中创建了一个新目录和一个新的 Excel 文件。我的目标是写入该excel文件。我有以下代码(顺便说一句,它不起作用):
$filename = 'moldes/VLMOLDES_'.$id.'/Orcamento161.xlsm';
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filename);
$worksheet = $spreadsheet->getActiveSheet();
$worksheet->getCell('A18')->setValue('3');
除了写入文件之外的所有内容都按预期工作。当我单击按钮时,它会打开一个空白页面,但没有任何反应!我尝试了很多不同的方法,但我是 phpSpreadSheets 的菜鸟。如何在该文件的特定单元格中写入内容?
解决方案
您缺少以下内容 - 您需要在代码末尾保存文件,否则更改不会反映在文件中。
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, "Xlsx");
$writer->save('moldes/VLMOLDES_'.$id.'/Orcamento161.xlsm');
此外,可能更喜欢使用:
$worksheet->setCellValue('A18', '3');
推荐阅读
- flutter - Flutter 中的 Either 模块中的 Left 和 Right 是什么?
- powershell - 根据操作系统版本进行注册表更改
- javascript - 猴子补丁 XMLHttpRequest.send 用于特殊 url
- amazon-web-services - 用于管理无 AWS 服务器的基础设施的 Terraform 或云形成
- python - 如何在 Django 中对空白字段表单进行单元测试?
- flutter - 消费者完成构建后颤振 showDialog
- jmeter - 将变量从一个 jdbc 请求发送到 JMeter 中的另一个 jdbc 请求
- grails - 创建名为 samlAuthenticationProvider 的 bean 时出错?
- python - 在 JSON 中转换 Python 列表
- java - 如何使用 querydsl 获取子字段?