当前位置: 首页 > 知识库问答 >
问题:

为什么我的Excel文件不能用PHP打开?

梅耘豪
2023-03-14

我需要在Excel文件中做数据导出,我想很容易:)

我使用PhpSpreadsheet库(https://github.com/phpoffice/PhpSpreadsheet)

我尝试使用PhpSpreadsheet示例,并做一些简单的事情:

  1. 创建Xlsx电子表格
  2. 在Hardrive上保存
  3. 在浏览器中打开下载
require_once $this->config->application->libraryDir . 'PhpSpreadsheet-master/vendor/autoload.php';

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');

$writer = new Xlsx($spreadsheet);
$fileName = 'export/hello_world.xlsx';
$writer->save($fileName);

// header('Location: '.$fileName);
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$fileName.'"');
header('Cache-Control: max-age=0');
$writer->save('php://output');

你知道为什么会有这个问题吗?

共有1个答案

詹斌蔚
2023-03-14

$writer->.save('php://output')之后尝试exiting。要进行故障排除,在标头(...)之前,请尝试exiting以确保没有输出。

既然您知道$writer->save($filename)是有效的,那么您可以尝试使用$writer->save('php://output'),而不是调用$writer->save($filename);头(...);echo file_get_contents($filename);尝试不同的内容类型也是值得的

 类似资料:
  • 问题内容: 我正在尝试使用方法两次读取给定文件的内容。奇怪的是,当我第二次调用它时,似乎没有将文件内容作为字符串返回? 这是代码 当然我知道这不是最有效或最好的方法,这不是重点。关键是,为什么我不能调用两次?我需要重置文件句柄吗?或者关闭/重新打开文件以执行此操作? 问题答案: 调用read()将读取整个文件,并将读取的游标留在文件的末尾(仅读取其他内容)。如果你希望一次阅读一定数量的行,则可以使

  • 本文向大家介绍什么是PHP文件?如何打开PHP文件?,包括了什么是PHP文件?如何打开PHP文件?的使用技巧和注意事项,需要的朋友参考一下 在平时我们可能会碰到过php文件,可是很多用户不知道php文件是什么文件?也不知道怎么打开php文件?为了满足一些用户的好奇心,小编现在就给大家讲解php文件以及如何打开php文件的方法。 1、PHP文件是什么?   PHP(Hypertext Preproc

  • 我试图使用流按国籍对我的对象进行分组并打印出来。 但是它说:"不能解析方法'println"

  • 在PhpStorm的最新版本(2018年)中,所以它在项目的2017年版本中,我有一个名为<code>User_model的文件。php</code>,并且PhpStorm不将其识别为php文件,而是将其识别成纯文本文件。 但它并不总是如此;我最近才注意到。 我意识到问题出在文件名中()。因为只要我更改文件名(例如,),该文件就会立即被识别为php文件。 是不是(< code>User_model

  • 问题内容: 我在WAMP中使用PHP编写PHP应用程序已有一段时间了。现在,我将在工作PC上分别安装PHP和Apache HTTP Server。我已经安装了PHP 5和最新的Apache。我去本地主机,看到它的工作原理! 现在,我添加了一个名为的文件,该文件显示: 但是在浏览器中,它仅显示纯文本。我有明确告诉它使用PHP 5的地方吗? 问题答案: 您需要将其添加到服务器配置中: 那是假设您已经正

  • 我不知道我在PhpStorm 2019.2.3中的PHP文件发生了什么,但它与PHP文件不同。我的意思是缺少上下文帮助、代码重新格式化等。。。 我更改了哪些选项以及如何恢复? 实际上只有一个文件有问题,其他的都没问题。