我正在使用PHPExcel将一些数据导出到Excel文件中的用户。我希望脚本在创建后立即将excel文件发送给用户。这是我的测试代码:

try{

/* Some test data */

$data = array(

array(1, 10 , 2 ,),

array(3, 'qqq', 'some string' ,),

);

$objPHPExcel = new PHPExcel();

$objPHPExcel->setActiveSheetIndex(0);

/* Fill the excel sheet with the data */

$rowI = 0;

foreach($data as $row){

$colI = 0;

foreach($row as $v){

$colChar = PHPExcel_Cell::stringFromColumnIndex($colI++);

$cellId = $colChar.($rowI+1);

$objPHPExcel->getActiveSheet()->SetCellValue($cellId, $v);

}

$rowI++;

}

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');

header('Content-Disposition: attachment;filename="export.xlsx"');

header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

$objWriter->save('php://output');

}catch(Exception $e){

echo $e->__toString();

}

在我的本地服务器(Windows 7 x64,Php 5.3.8,Apache 2.2.21)我得到一个有效的xlsx文件。没有错误。

但在实时服务器上有问题(Linux 2.6.32-5-amd64,PHP 5.3.3-7 squeeze13,Apache 2.2.16)。该脚本允许浏览器使用这样的内容下载“export.xlsx”文件:

exception 'PHPExcel_Writer_Exception' with message 'Could not close zip file php://output.' in /var/www/someuser/data/www/somedomain.com/libs/PHPExcel/Writer/Excel2007.php:348

Stack trace:

#0 /var/www/someuser/data/www/somedomain.com/classes/Report/Leads/Export.php(339): PHPExcel_Writer_Excel2007->save('php://output')

#1 /var/www/someuser/data/www/somedomain.com/application/pages/account/controllers/TestController.php(13): Report_Leads_Export->Test()

#2 /var/www/someuser/data/www/somedomain.com/libs/Zend/Controller/Action.php(516): Account_TestController->indexAction()

#3 /var/www/someuser/data/www/somedomain.com/libs/Zend/Controller/Dispatcher/Standard.php(295): Zend_Controller_Action->dispatch('indexAction')

#4 /var/www/someuser/data/www/somedomain.com/libs/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))

#5 /var/www/someuser/data/www/somedomain.com/index.php(511): Zend_Controller_Front->dispatch()

#6 {main}

PHP不是以安全模式运行。 “open_basedir”选项为空(已被注释掉)。

我在PHPExcel文件中找到了这样的代码:

if ($objZip->close() === false) {

throw new PHPExcel_Writer_Exception("Could not close zip file $pFilename.");

}

所以问题的原因是$ objZip-> close()=== false其中$ objZip是ZipArchive类的一个实例。

问题的原因是什么,如何解决?谢谢。

php 输出excepion内容,带有消息“无法关闭zip文件php://输出”的PHPExcel_Writer_Exception...相关推荐

  1. java 输出定位代码行_指定一个.java文件,输出其代码行数

    CountList2.java//用来统计java代码行数 import java.io.BufferedReader; import java.io.File; import java.io.Fil ...

  2. c语言解析zip文件内容,C语言怎么读取zip文件内容??

    #include "stdio.h" #include "stdlib.h" void main() { FILE *fp; /*定义指向文件的指针*/ cha ...

  3. JS常用的输出内容的方式详解(5种输出方式)

    1.alert("要输出的内容"); ->在浏览器中弹出一个对话框,然后把要输出的内容展示出来 ->alert都是把要输出的内容首先转换为字符串然后在输出的 2.doc ...

  4. php读取zip文件,php如何读取zip内容?(zip_entry_read函数的使用)

    本篇文章主要给大家介绍PHP如何从打开的 zip 档案中获取内容,那么在PHP中有一个内置函数可以实现,即zip_entry_read()函数. zip_entry_read()函数是PHP中内置的函 ...

  5. php 读取zip 文件内容,php如何读取zip内容?(zip_entry_read函数的使用)

    本篇文章主要给大家介绍PHP如何从打开的 zip 档案中获取内容,那么在PHP中有一个内置函数可以实现,即zip_entry_read()函数. zip_entry_read()函数是PHP中内置的函 ...

  6. 编写程序,在文件file1.dat中存入字符串“good morning”,然后将file1.dat中的内容输出到屏幕上,并复制到文件file2.dat中

    <程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p257 习题8 7.编写程序,在文件file1.dat中存入字符串"good morning ...

  7. CentOS工作内容(二)关闭SELinux

    CentOS工作内容(二)关闭SELinux CentOS安装完成后,有很多配置要改,不过最重要就是关闭SELinux SELinux是增强安全性的一项功能,不是SELinux不好,而是当功能安全性较 ...

  8. php gzip 关闭,php能否在当前脚本页关闭nginx的gzip输出

    php写了个无刷新输出缓存,但是当nginx设置了gzip压缩之后就无效了,请问如何设置php关闭当前页面的gzip输出. 我试图设置php.ini来关闭,不过不好使 ini_set('zlib.ou ...

  9. python输出文本内容_python如何输出文件内容

    文件只是连续的字节序列.数据的传输经常会用到字节流,无论字节流是由单个字节还是大块数据组成. 你必须先用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行 ...

最新文章

  1. Dorado7功能及技术特点
  2. Google TPU 揭密——看TPU的架构框图,矩阵加乘、Pool等处理模块,CISC指令集,必然需要编译器...
  3. Linux uniq命令
  4. 人脸检测与识别年度进展概述
  5. destoon b2b 360网站智能摘要标签配置
  6. NPOI 设置合并后的单元格的边框的解决方法
  7. FCKeditor 2.6.4.1配置
  8. Excel 常用函数和公式
  9. 计算机桌面设置上时间表,桌面时钟怎么设置-电脑显示时间不对 怎么校准电脑右下角显示的时间?...
  10. 中国石油大学《输气管道设计与管理(含课程设计)》第三阶段在线作业
  11. c#中PROCESS的用法
  12. 实现echarts图多个legend图例和自定义legend中字体颜色
  13. 中国移动光猫 GM220-S 改桥接简易教程(安徽移动)
  14. 批量下载网页图片,python只需23行代码
  15. 32位程序运行内存1G以上容易卡死或崩溃问题
  16. Win10搭建ELK8.0.0环境
  17. 我的物联网项目(二十九) 线上前期运营
  18. DM7-3.sql文件导入达梦数据库
  19. s6显示android已停止,不幸的是,系统用户界面在关闭我的应用程序在三星Galaxy S6后已停止...
  20. python readline 返回行号_python readline()返回多行

热门文章

  1. wether.html5.qq.com,weather.html
  2. c语言ad采样程序思路,单片机AD采样程序及其寄存器讲解
  3. 打响汽车信息安全战,百度Apollo构建最高等级安全防护盾牌
  4. java sql string_JAVA String转化成java.sql.date和java.sql.time方法示例
  5. androidid什么时候会变_今天是“三九”为什么老话说:三九冰上走一走,过年也能露一手!...
  6. python建立数据库并序列化_Python之数据序列化(json、pickle、shelve)
  7. 斐波那契数列python递归 0、1、1、2、3_python: 递归和递推方法求斐波那契数列
  8. php程序员可能不了解的编程细节
  9. 【loj#2524】【bzoj5303】 [Haoi2018]反色游戏(圆方树)
  10. SPListItem.Update() 与 SPListItem.SystemUpdate()区别