php下载excel无法打开的解决方法


Posted in PHP onDecember 24, 2013

php下载excel文件,
1、在下载的过程中不要 输出任何非文件信息,比如 echo log信息。 否则下载后的文件无法打开,提示格式错误或者文件被破坏。
2、 输出的excel格式一定要和后缀名保存一直,否也会提示格式错误或者文件被破坏

if (file_exists(CACHE_PATH . $file_name)){
            //$this->logger->error('file realpath:'.realpath(CACHE_PATH . $file_name));
      header( 'Pragma: public' );
      header( 'Expires: 0' );
      header( 'Content-Encoding: none' );
      header( 'Cache-Control: must-revalidate, post-check=0, pre-check=0' );
      header( 'Cache-Control: public' );
   header( 'Content-Type: application/vnd.ms-excel');  
      header( 'Content-Description: File Transfer' );
      header( 'Content-Disposition: attachment; filename=' . $file_name );
      header( 'Content-Transfer-Encoding: binary' );
      header( 'Content-Length: ' . filesize ( CACHE_PATH . $file_name ) );
      readfile ( CACHE_PATH . $file_name );
  } else {
   $this->logger->error('export model :'.$id.' 错误:未生产文件');
      echo '<script>alert(\'export error, file not exists!\')</script>';
  }
PHP 相关文章推荐
Zend Guard一些常见问题解答
Sep 11 PHP
mysql5的sql文件导入到mysql4的方法
Oct 19 PHP
探讨PHP中OO之静态关键字以及类常量的详解
Jun 07 PHP
php mail to 配置详解
Jan 16 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
PHP简单生成缩略图相册的方法
Jul 29 PHP
CI框架的安全性分析
May 18 PHP
Linux服务器下PHPMailer发送邮件失败的问题解决
Mar 04 PHP
PHP读取Excel类文件
May 15 PHP
php实现的后台表格分页功能示例
Oct 23 PHP
PHP实现防止表单重复提交功能【基于token验证】
May 24 PHP
一文看懂PHP进程管理器php-fpm
Jun 01 PHP
php calender(日历)二个版本代码示例(解决2038问题)
Dec 24 #PHP
discuz免激活同步登入代码修改方法(discuz同步登录)
Dec 24 #PHP
phpexcel导入excel数据使用方法实例
Dec 24 #PHP
php生成excel列序号代码实例
Dec 24 #PHP
php jquery 多文件上传简单实例
Dec 23 #PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
Dec 22 #PHP
PHP变量的定义、可变变量、变量引用、销毁方法
Dec 20 #PHP
You might like
获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)
2013/06/03 PHP
PHP两种快速排序算法实例
2015/02/15 PHP
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
浅谈php错误提示及查错方法
2015/07/14 PHP
深入解析contentWindow, contentDocument
2013/07/04 Javascript
jquery 实现上下滚动效果示例代码
2013/08/09 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
javaScript 计算两个日期的天数相差(示例代码)
2013/12/27 Javascript
javascript表单验证大全
2015/08/12 Javascript
jQuery的实例及必知重要的jQuery选择器详解
2016/05/20 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
jQuery表单验证插件解析(推荐)
2016/07/21 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
nodejs实现发出蜂鸣声音(系统报警声)的方法
2017/01/18 NodeJs
javascript表单正则应用
2017/02/04 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
获取layer.open弹出层的返回值方法
2018/08/20 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
Weex开发之WEEX-EROS开发踩坑(小结)
2019/10/16 Javascript
python查看FTP是否能连接成功的方法
2015/07/30 Python
windows系统下Python环境的搭建(Aptana Studio)
2017/03/06 Python
使用python实现生成用户信息
2017/03/20 Python
用Python将IP地址在整型和字符串之间轻松转换
2017/03/22 Python
pandas将DataFrame的列变成行索引的方法
2018/04/10 Python
Python实现随机生成手机号及正则验证手机号的方法
2018/04/25 Python
Python绘制KS曲线的实现方法
2018/08/13 Python
python中函数返回多个结果的实例方法
2020/12/16 Python
AmazeUI 面板的实现示例
2020/08/17 HTML / CSS
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
大学军训感言
2014/01/10 职场文书
生产部厂长助理职位说明书
2014/03/03 职场文书
班级文化建设标语
2014/06/23 职场文书
鲁滨孙漂流记读书笔记
2015/06/30 职场文书
Java使用Unsafe类的示例详解
2021/09/25 Java/Android
Go语言入门exec的基本使用
2022/05/20 Golang
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers