2016-09-02 17 views
1

我使用php-export-data類爲excel輸出。這個類在我的localhost和godady服務器上工作,但在我的新服務器上不起作用。我該如何解決php-export-data class'header error?

它給出了標題錯誤。喜歡這個:

Warning: Cannot modify header information - headers already sent by (output started at /home/mmm/public_html/head/adminsss/config.php:1) in /home/mmm/public_html/head/adminss/modules/head/class/php-export-data.class.php on line 489  
Warning: Cannot modify header information - headers already sent by (output started at /home/mmm/public_html/head/adminsss/config.php:1) in /home/mmm/public_html/head/adminsss/modules/head/class/php-export-data.class.php on line 490<br> 
Line 489 => header("Content-Type: application/vnd.ms-excel; charset=" . $this->encoding); 
Line 490 => header("Content-Disposition: inline; filename=\"" . basename($this->filename) . "\""); 
  • 本地主機的PHP版本5.5.11
  • godady PHP版本5.3.24
  • 新的服務器PHP版本5.5.23

哪有我解決這個問題?

+1

可能的[如何修復]已經發送的頭文件「PHP中的錯誤」的副本(http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php) –

+0

謝謝保羅,我讀過那篇文章,但我不明白。但我現在解決這個問題。 – user2246457

+0

在問你的下一個問題之前,請閱讀http://stackoverflow.com/help/how-to-ask。 –

回答

0

如果錯誤信息顯示第一行如「/config.php:1」,則必須將php文件轉換爲不帶BOM。

UTF-8 BOM 

單獨的斷線和空格可能會成爲問題。但也有可能導致這種情況的「不可見」字符序列。最着名的是大多數文本編輯器都沒有顯示的UTF-8 BOM(字節順序標記)。它是字節序列EF BB BF,對於UTF-8編碼的文檔是可選的和冗餘的。但是PHP必須將其視爲原始輸出。它可能在輸出中顯示爲字符(如果客戶端將文檔解釋爲Latin-1)或類似的「垃圾」。