php用PHPExcel导出数据到excel表,提示错误: Cannot modify header information - headers already sent

php用PHPExcel导出数据到excel表,提示错误: Cannot modify header information - headers already sent by,这是什么意思?应该怎样解决?

第1个回答  2013-10-12
因为已经输出了,所以不能更改 文件头信息。是执行 header() 的报错,在 php 文件最最最最最开始的地方(php 程序执行的第一行)加一个 ob_start();把缓存打开。就可以解决这个问题追问

还是没用

追答

利用编码转换器将您的所有 php 文件转为 utf-8 无 bom 头的格式。现在不知道您的那个文件有bom头所以导致了这个问题
曾经用过 一个叫 (去除BOM头小工具 / 编码转换器)两个小软件 百一下,使用很简单。

追问

灰常感谢,问题已经解决,就是这个原因,谢谢~

第2个回答  2013-10-12
在设置header之前有其他输出 找找看去了 或者看看文件格式是不是有bom 改为无bom的追问

没有bom,就是utf-8!

本回答被提问者采纳
第3个回答  2013-10-12
这个应该是跟PHPExcel没啥关系吧。
个人猜测,仅供参考:
您是不是在发送了页面内容之后,又试图修改header。
一般报错,应该是会行数的,您去那行找一找,看一看是不是涉及到了修改Header的语句。

http要求在发送内容之前发送header,换言之,一旦发送了内容,就不再允许修改header。追问

报错的有8行,都是同一个错误,都是在设置header(),在其他地方时候是对的啊,我复制过来,相应的地方改了一下就报错了!