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

前端技术 2023/09/07 PHP

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>\';
  }

本文地址:https://www.stayed.cn/item/19754

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。