首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP:创建excel表

PHP:创建excel表
EN

Stack Overflow用户
提问于 2022-01-20 11:02:03
回答 3查看 960关注 0票数 0

我需要在php的帮助下创建一个excel表。这有可能吗?下面的php代码创建excel文件并将其写入excel文件。我想创建一个excel表与数据,见下图。我在使用PhpSpreadsheet (抱歉我忘了这么说)

编辑:下面的代码使用库PhpSpreadsheet来割让带有某些内容的excel文件。

我想创建一个excel表:

  1. 代码工作并创建内容,如下面的第二张图片所示。这不是excel表,只是单元格中的纯文本。
  2. 但这不是我想要的。我想要能够创建的内容,如下所示的第一张图片。这是一个excel表。当您手工创建excel表时,您可以选择colrs等。我不关心颜色。Excel添加列名并向下推送内容。
  3. 我尝试的是添加:$sheet->setAutoFilter('A1:B5');到代码中,但是这不会像下面第三张图所示的那样创建一个excel表。
  4. 所以问题是:我需要在上面的代码中添加什么才能创建内容,如下面的第一张图片所示
  5. 下面的第四张图片显示了如何在excel中缓存excel表(这就是我希望php代码所做的)。
代码语言:javascript
运行
复制
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'A1');
$sheet->setCellValue('A2', 'A2');
$sheet->setCellValue('A3', 'A3');
$sheet->setCellValue('A4', 'A4');
$sheet->setCellValue('A5', 'A5');
//$sheet->setCellValue('A6', 'A6');

$sheet->setCellValue('B1', 'B1');
$sheet->setCellValue('B2', 'B2');
$sheet->setCellValue('B3', 'B3');
$sheet->setCellValue('B4', 'B4');
$sheet->setCellValue('B5', 'B5');
$writer = new Xlsx($spreadsheet);
$writer->save('CreateExcelTable.xlsx'); 

下图显示了tableI想要创建的

在上面的代码中,创建了以下内容:

添加代码:$sheet->setAutoFilter('A1:B5');

下面的图片显示了什么是created.It不是表

EN

回答 3

Stack Overflow用户

发布于 2022-01-20 11:35:11

Insert/Table只是一个GUI“快捷”方法,用于针对一个单元格块设计和设置自动筛选器。这两种方法都可以使用PHPSpreadSheet作为单独的任务来完成,但是库没有提供一种使用单个方法调用来完成这一任务的“快捷”方法。

看看开发人员文档的部分

票数 1
EN

Stack Overflow用户

发布于 2022-10-07 09:56:36

我也有类似的问题。我的Excel模板有一些数组公式,它引用了命名的数据表(而不是在数组公式A2:A 150中写入NameOfMyTableNameOfColumn),当我使用PhpSpreadSheet在模板中插入一些数据并下载生成的excel文件时,NameOfMyTableNameOfColumn的每个实例都被REF!替换。

而不是在使用时搜索如何制作或保存命名数据表。我只需将所有命名的表转换回简单的范围。(您可以通过excel中的TableTools轻松地完成此转换,而不必更改Excel模板中的每个公式)。

票数 0
EN

Stack Overflow用户

发布于 2022-01-20 11:20:07

我有我写的代码,如果你想用它

看看代码

使用

代码语言:javascript
运行
复制
$excelExport = new ExcelExport(['name' => 'dılo'], 'file');
$excelExport->download();

使用php的最短excel创建示例

基本实例

代码语言:javascript
运行
复制
<?php
$file="demo.xls";
$test="<table  ><tr><td>Cell 1</td><td>Cell 2</td></tr></table>";
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$file");
echo $test;
?>
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70785023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档