应用phpexcel导出excel文件后打不开,提示“文件格式或文件扩展名无效,请确定文件未损坏,并且文件扩展名与文件的格式匹配”。

试了以下方法:

1.首先区分文件格式是2003,还是2007。 参考原文:https://blog.csdn.net/beyond__devil/article/details/53283352

if($type == 'excel2003')

{

header('Content-Type: application/vnd.ms-excel');

header("Content-Disposition: attachment;filename='{$fileName}'");

header('Cache-Control: max-age=0');

$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');

$objWriter->save('php://output');

}

else{

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');

header("Content-Disposition: attachment;filename='{$fileName}'");

header('Cache-Control: max-age=0');

$objWriter = \PHPExcel_IOFactory:: createWriter($objPHPExcel, 'Excel2007');

$objWriter->save( 'php://output');

}

原因:

1.发送header()头之前,不知道又啥特殊字符输出(可能是BOM,也可能是其他),导致php报错!然后将报错内容输出到了Excel

2.极大可能是:文件BOM头问题,生成的Excel文件头部添加了BOM头!

解决方案:

1.在输出Excel前,缓冲区中处理BOM头(可能是其他字符)

ob_end_clean();

ob_start();

在header()函数调用之前,清楚之前的错误输出!

2.有人第一步过后,问题未解决。通过ob_get_contents()查看导出内容,并未发现BOM头。

再就是应用了框架,返回的静态页输出成了excel文件。

试了以上方法后,还是没有问题,最后查看导出的文件内容,意识到是跳转到静态页导致的。

加上 exit($contents); 后问题解决。

PHPExcel导出excel文件

今天园子刚开,先来个货顶下,后续园丁qing我会再慢慢种园子的,希望大家多来园子逛逛. PHPExcel导出excel文件,先说下重要的参数要记住的东西 impUser() 导入方法 exportEx ...

Yii框架中使用PHPExcel导出Excel文件

最近在研究PHP的Yii框架,很喜欢,碰到导出Excel的问题,研究了一下,就有了下面的方法: 1.首先在config\main.php中添加对PHPExcel的引用,我的方式是这样: 1 2 3 4 ...

thinkPHP5.0 使用PHPExcel导出Excel文件

首先下载PHPExcel类.网上很多,自行下载. 我下载的跟composer下载的不太一样.我下载的是   下载存放目录.jpg 而composer下载的是:   composer下载.jpg 本篇使 ...

使用phpExcel导出excel文件

function export($log_list_export) { require "../include/phpexcel/PHPExcel.php"; require &q ...

PHP导出excel文件

现在教教你如何导入excel文件: 在我的文件储存里面有一个com文件夹的,将其解压放在ThinkPHP/Library/文件夹里面,然后就是写控制器啦!去调用这个插件: <?php names ...

vue&plus;element 表格导出Excel文件

https://www.cnblogs.com/bobodeboke/p/8867481.html  非常感谢 这个大佬 才让我搞到了Blob.js 和 Export2Excel.js 如果最后运行时 ...

使用PHPExcel实现Excel文件的导入和导出&lpar;模板导出&rpar;

在之前有写过一篇文章讲述了使用PHP快速生成excel表格文件并下载,这种方式生成Excel文件,生成速度很快,但是有缺点是:1.单纯的生成Excel文件,生成的文件没有样式,单元格属性(填充色,宽度 ...

phpExcel导出excel打不开问题

用wps和office都打不开,使用旧版的office打开了 出现了一些 warming警告,虽然warming不影响函数的执行,但是php导出excel文件,是header出来的.这个warning ...

phpexcel 导出excel无法打开,提示文件格式或文件名无效,文件损毁,解决办法

使用过很多次phpexcel了,有时需要保存文件到磁盘,有时需要浏览器弹出下载.保存到磁盘一半不会出现问题,关键是浏览器弹出保存,经常会发生导出的excel文件无法打开,提示文件格式或文件名无效,文件 ...

随机推荐

java多线程-同步块

Java 同步块(synchronized block)用来标记方法或者代码块是同步的.Java 同步块用来避免竞争.本文介绍以下内容: Java 同步关键字(synchronzied) 实例方法同步 ...

iOS 上传新版本到AppStore时报错ITMS-90034

今天打包新版本上传到AppStore时报错 ERROR ITMS-90034:"Missing or invalid signature.The bundle'com.xxx.xxx' at ...

iOS开发错误日志

错误提示:fatal error: file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platfor ...

Off-by-one错误

在迭代循环中,误用> < ≥ ≤符号,有可能导致循环次数多一次或者少一次,就会引发off-by-one错误,混用半开区间和闭区间时,也经常发生此类错误,解决方法是利用最小的输入值去测试代码 ...

Unity3D的SerializeField 序列化域名

SerializeField Inherits from Attribute Force Unity to serialize a private field. 强制Unity去序列化一个私有域. Y ...

javaweb之session过期验证

session过期判断的基本思想:用户登录成功后,将用户账号信息保存在session中,然后几乎每次执行命令都要经过过滤器,过滤器检查session中是否存在账号,若不存在, 则返回登录页面,反之正常 ...

Scala中foldLeft的总结

源码分析 def seq: TraversableOnce[A] 上面两段代码是scala.collection.TraversableOnce特质的foldLeft方法源代码,实现了Traversa ...

html4

一.span标签:能让某几个文字或者某个词语凸显出来

今天是11月份的第一天,地铁卡不打折了

二.字体风格 ...

项目开发中关于jquery中出现问题小结(textarea,disabled,关键字等)

1.textarea: 使用 定义了一个textarea,在使用jquery的方法获取文本内容的时候总是为空. var content = $(“#content”).val();  后来测试发现,i ...

php用excel打不开,应用phpexcel导出excel文件后打不开的问题解决方法相关推荐

  1. 打开excel显示php拓展名,phpexcel 导出excel 因为文件格式或文件扩展名无效,请确定文件未损坏,并且文件扩展名与文件的格式匹配...

    phpexcel导出excel:打开出现这个错误,强制打开是乱码 $objPHPExcel =newPHPExcel(); $filename ="test.xls"; heade ...

  2. 应用phpexcel导出excel文件后打不开的问题解决方法

    应用phpexcel导出excel文件后打不开的问题解决方法 参考文章: (1)应用phpexcel导出excel文件后打不开的问题解决方法 (2)https://www.cnblogs.com/im ...

  3. phpExcel导出excel打不开问题

    关于phpExcel导出excel之后打开不了的问题 情况说明: 我相信很多人用过phpExcel这个类库都会遇到的一个问题就是,导出excel表格文件后(xls或xlsx文件),打开这个文件既然显示 ...

  4. 关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法

    原文:关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法 上次在开发一个项目时,用到PHPExcel导出数据,其中有导出身份证等长串数字时导出的Excel中显示为科学计数方式. ...

  5. Yii框架中使用PHPExcel导出Excel文件

    Yii框架中使用PHPExcel导出Excel文件http://www.cnblogs.com/wgx214/p/3709521.html 转载于:https://www.cnblogs.com/fl ...

  6. php无法导出excel,PHPExcel导出Excel文件时出现错误的解决办法

    phpexcel文件是一款开源的php表格操作插件,只要用到excel数据导入导出的朋友大多数人都选择此款插件了,但在使用中也会有问题出现,下面来看问题分析研究. PHPExcel是PHP中功能最强大 ...

  7. 使用phpexcel导出excel常用函数

    下面主要总结了在工作中,我们利用phpexcel导出excel时常用的函数方法. <?php// 这边需要引入你自己的phpexcel内库 include_once './phpexcel/PH ...

  8. phpExcel导出excel加超级链接和图片的实例代码

    <span style="font-family: Arial, 宋体; font-size: 14px; line-height: 24px; text-indent: 14px; ...

  9. PHPExcel导出excel

    PHPExcel导出excel 如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,例如下面就把$yourStr从utf-8转换成了gb2312: $yourStr = mb_convert_ ...

  10. PHPExcel 导出excel(xls)

    PHPExcel 导出excel(xls) 下次用就可以直接粘代码了

最新文章

  1. ipvsadm的几个参数输出的说明
  2. python大作业爬虫_Python大作业---微博爬虫及简单数据分析
  3. linux mysql插入数据乱码_解决Linux下Tomcat向MySQL插入数据中文乱码问题
  4. CentOS安装图文教程
  5. [20150831]中文符号在sql语句.txt
  6. three.js加入监控
  7. Vue中常用的组件传值方式
  8. java 设计模式学习笔记四 prototype模式
  9. 腾讯公司执行董事 董事会主席兼本公司首席执行官 马化腾
  10. html如何改成花体英文字体,花体英文转换器可复制字体(附花体字发文技巧)...
  11. 谁吃土的时候没有受过委屈?
  12. 华硕开机自动进入BIOS解决办法
  13. 数据嗨客 | 第6期:不平衡数据处理
  14. 大数据在高校中的应用
  15. FastRTPS - eProsima FASTRTPSGEN Manual
  16. import javax.jws 出错
  17. Office:你的 OneDrive 帐户存在问题?
  18. 在测试中实施人工智能
  19. 计算机机械硬盘的一个扇区,机械硬盘分区结构
  20. 不知道什么是单元测试?6个实例够不够

热门文章

  1. [ROS]一些传感器数据读取融合问题的思考
  2. 若依集成actuator实现优雅关闭应用
  3. 瀛洲大学计算机专业毕业 卖身,目前计算机芯片 ( 集成电路 ) 制造的主要原料 } 是 () ,它是一种可以在沙子中提炼出的物质。_学小易找答案...
  4. 面对失败计算机科学家,面对巨大挫折,仍毫不畏惧、坚韧不拔的名人事例
  5. MATLAB机器人可视化运动仿真
  6. 安卓短信转发qq邮箱
  7. 服务器声卡硬件安装,虚拟声卡,详细教您怎么安装虚拟声卡
  8. [YYOJ]LZY喜欢的数字
  9. 关卡 动画 蓝图 运行_虚幻4 UE4 蓝图之关卡蓝图实现自动开关门
  10. mysql audit plugin_MySQL Audit Plugin的简单应用