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 相关文章推荐
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
Oct 09 PHP
php 方便水印和缩略图的图形类
May 21 PHP
利用Memcached在php下实现session机制 替换PHP的原生session支持
Aug 21 PHP
PHP操作Memcache实例介绍
Jun 14 PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
Jun 22 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
yii的CURD操作实例详解
Dec 04 PHP
MySql数据库查询结果用表格输出PHP代码示例
Mar 20 PHP
php获取百度收录、百度热词及百度快照的方法
Apr 02 PHP
php中header跳转使用include包含解决参数丢失问题
May 08 PHP
PHP自动生成表单代码分享
Jun 19 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 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
mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
2010/03/21 PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
2013/12/25 PHP
php实现将上传word文件转为html的方法
2015/06/03 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
2019/10/03 PHP
tp5 实现列表数据根据状态排序
2019/10/18 PHP
PHP+MySQL实现在线测试答题实例
2020/01/02 PHP
JS request函数 用来获取url参数
2010/05/17 Javascript
jquery 元素相对定位代码
2010/10/15 Javascript
javascript显示用户停留时间的简单实例
2013/08/05 Javascript
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
jquery实现页面图片等比例放大缩小功能
2014/02/12 Javascript
谈谈JavaScript自定义回调函数
2015/10/18 Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
2016/01/26 Javascript
详解AngularJS中的http拦截
2016/02/09 Javascript
Jquery表单验证失败后不提交的解决方法
2016/10/18 Javascript
微信小程序实现长按删除图片的示例
2018/05/18 Javascript
jQuery实现基本淡入淡出效果的方法详解
2018/09/05 jQuery
解决vue脚手架项目打包后路由视图不显示的问题
2018/09/20 Javascript
vue项目使用axios发送请求让ajax请求头部携带cookie的方法
2018/09/26 Javascript
vue仿ios列表左划删除
2019/09/26 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
详解实现vue的数据响应式原理
2021/01/20 Vue.js
[01:01:35]Optic vs paiN 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
深入分析在Python模块顶层运行的代码引起的一个Bug
2014/07/04 Python
python实现计算资源图标crc值的方法
2014/10/05 Python
Python实现的递归神经网络简单示例
2017/08/11 Python
Numpy 改变数组维度的几种方法小结
2018/08/02 Python
pandas ix &amp;iloc &amp;loc的区别
2019/01/10 Python
Python3自定义json逐层解析器代码
2020/05/11 Python
pandas apply使用多列计算生成新的列实现示例
2021/02/24 Python
美国现代家具和家居商店:Apt2B
2016/08/29 全球购物
打造经典复古风格的品牌:Alice + Olivia(爱丽丝+奥利维亚)
2016/09/07 全球购物
劳资人员岗位职责
2013/12/19 职场文书
促销活动总结模板
2014/07/01 职场文书
关于对TypeScript泛型参数的默认值理解
2022/07/15 Javascript