[英]PHPexcel, and how to download uncorrupted file?
我搜索了几个小时,仔细阅读了数十页,试图找到答案。
我正在使用PHPexcel生成电子表格,并将其保存为Excel 2007 .xlsx文件在服务器上。 如果我直接从服务器下载.xlsx文件并在计算机上打开它,则可以正常打开。 没问题。
如果我使用php脚本下载文件(通过readfile()
),则ms excel会向我显示“此文件已损坏...”消息。
好的,我已经对两个文件进行了十六进制文件比较,但是没有明显的区别!
这会在我的ubuntu服务器(运行php 5.3.2)和wampserver(运行PHP 5.3.13的Windows 8、64位环境)上发生。
我检查了所有内容以确保在readfile()之前没有\\ t或\\ n或任何其他输出发送出去;
我使用了ob_start和ob_end_clean()来确保没有输出被发送。
我没有将PHP v 5.2.8与错误的php_zip.dll二进制文件一起使用。
并得到这个! , 这太疯狂了。
我什至使用MS excel程序创建了一个excel文件。 文件没有问题。 我将其直接上传到我的服务器,然后通过链接直接访问它。 它会下载,当我尝试打开它时,出现“文件已损坏,无法打开”消息。
如果您想尝试一下,可以使用以下直接链接: http : //db.doanddare.org/Lyv6r_y7echVnAcUG4fGUw/testing.xlsx
是的,它是指向我刚刚在excel中创建并上传的测试文件的直接链接。 此处不涉及任何php处理或标头。
堆栈溢出是我的最后选择! 谢谢你的帮助。
哦,我使用的是excel 2013预览版,如果有帮助的话...
不确定是否仍然存在此问题,距您提出问题已经过去了两年,但我刚遇到问题,并找到了解决方案:
您需要在Excel中更改设置-它为我解决了问题。
(原始资料:Microsoft Excel帮助页面)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.