gpt4 book ai didi

php - PHP Excel文件格式与扩展名不匹配

转载 作者:行者123 更新时间:2023-12-03 11:09:52 25 4
gpt4 key购买 nike

使用PHPExcel脚本导出的XLS文件上出现上述错误(仅Windows)。我所见到的大多数关于此错误的引用都涉及输出到php://output(PHPExcel generated excel file not working. (File format or extension is invalid )时的尾部/前导空格/换行符。但是,我没有以这种方式输出。而是将XLS文件输出到服务器上的文件路径然后将URL传递回浏览器进行下载。我已经检查了我的PHP脚本以及它创建的文件的开头和结尾是否有空格和换行符,但是都没有。这是生成PHP代码的代码部分。

$xls = new PHPExcel();
$xls->getActiveSheet()->setTitle(substr($reportName, 0, 31));
$xls->setActiveSheetIndex(0);
//iterate over the headers
foreach($headers as $i => $header){
$xls->getActiveSheet()->SetCellValue(getExcelColumn($i+1) . '1', $header);
}
//iterate over the table contents
foreach($tableContents as $rowNum => $row) {
foreach($row as $col => $cell) {
if(strpos($cell, "none specified") > -1)
$cell = "N/A";
$cell = explode("<br />", $cell);
$cell = implode(", ", $cell);
$xls->getActiveSheet()->SetCellValue(getExcelColumn($col+1) . ($rowNum+2), $cell);
}
}
$fileName = createRandomKey(20) . '-' . $reportName . '.xls';
$w = new PHPExcel_Writer_Excel2007($xls);
$w->save("savedExports/$fileName");
$headers$tableContents取自 $_POST数据,此代码中调用了一些辅助函数。

最佳答案

你应该做:

$fileName = createRandomKey(20) . '-' . $reportName . '.xlsx';
*.xlsx是Excel 2007文件的正确扩展名

还:
strpos可以返回 false,您应该这样做
strpos($cell, "none specified") !== false

关于php - PHP Excel文件格式与扩展名不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29516359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com