应用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. Python面向对象的三大特性
  2. ZeroMQ接口函数之 :zmq - 0MQ 轻量级消息传输内核
  3. 快速使用Vue3最新的15个常用API
  4. 固态硬盘可靠性_您可以通过使用较少的总容量来提高硬盘的可靠性吗?
  5. rds mysql 磁盘空间,RDS MySQL 空间问题的原因和解决
  6. DebugView的使用[通用汇总]
  7. SSM简单参数传递与获取方法
  8. JDK8新特性(十四)之日期时间API
  9. mysql5.7.23安装详细过程
  10. (转)对冲基金投身“另类数据”淘金热
  11. SQL 复合查询条件(AND,OR,NOT)对NULL值的处理
  12. brace源码改造实现跨服务器监控-zjs
  13. SPSS中的数据分析—描述性统计分析【1】
  14. cloverconfig机型修改_CloverConfig新手设置教程.doc
  15. RoboWare Studio安装教程
  16. 刚刚,5000000 里程碑达成!
  17. 【寒江雪】Go实现工厂模式
  18. Excel技巧之插入图表
  19. 修复WHS中缺少的外部硬盘数据库错误
  20. webAPP开发三:实现数据的交互显示

热门文章

  1. 网络安全工程师面试总结
  2. 磁盘分区——MBR详解(私密)
  3. 按洲划分的国家和地区代码整理 包含:中文名 英文名 洲 首字母 两位英文代码 三位英文代码 三位数据代码 洲
  4. STM32开发_利用SPI协议读写SD卡、介绍SD卡SPI时序
  5. ROS(sub,pub)测试 Plotjuggler
  6. PTA 硬币找钱问题
  7. Mac 清理垃圾工具 Clean My Mac破解版
  8. 论文中常见的argmin,argmax是什么意思?
  9. SQL Server 2000~2017补丁包
  10. java去掉标点符号_java去除空格、标点符号的方法实例