教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 解决php下载excel无法打开的问题

解决php下载excel无法打开的问题

发布时间:2017-07-25   编辑:jiaochengji.com
使用php代码下载的excel文件无法打开,有可能是格式错误或文件损坏,也可能输出时数据错误,这里分享下正确的下载方法,供大家参考。

本节内容:
php下载excel后无法打开的解决方法和注意事项。
 
php下载excel文件,无法打开的原因分析:
1、在下载的过程中不要 输出任何非文件信息,比如 echo log信息。
否则下载后的文件无法打开,提示格式错误或者文件被破坏。
2、 输出的excel格式一定要和后缀名保存一直,否也会提示格式错误或者文件被破坏。

可以按如下示例,进行excel文件的正确下载。
例子:
 

复制代码 代码示例:
<?php
/**
* php代码实现excel文件下载
* edit: www.jbxue.com
*/
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>';
  }

>>> 您可能感兴趣的文章:
使用PHPExcel判别和格式化Excel中的日期格式的例子
phpExcel中文帮助手册(知识点)
phpexcel快速开发指南(不错)
phpexcel导入excel到数据库的代码
phpexcel导出数据的实例代码
phpexcel类库实例 支持(excel2003 excel2007)
PHPExcel读取excel文件的例子
phpexcel导出excel的经典实例
phpExcel类的使用方法分享
PHPExcel常用方法举例
phpExcel实现的excel操作类

您可能感兴趣的文章:
解决php下载excel无法打开的问题
php导出word文档与excel表格文件
php框架laravel excel包使用教程介绍
PHPExcel导出Excel文件时出现错误的解决办法
PHP导入与导出Excel文件的方法
php把excel数值格式转成日期格式问题
PHP Spreadsheet_Excel_Reader导入excel中文显示乱码
解决PHP导出CSV文中文乱码问题
PHP实时生成并下载超大数据量的EXCEL文件
php读取excel的实例代码

关键词: 无法打开   
[关闭]
~ ~