2014-02-18 60 views
-3

「頭已經發送」錯誤當運行我的劇本,我收到幾個錯誤是這樣的:如何解決在PHP

Warning: Cannot modify header information 
- headers already sent by (output started at /some/file.php:12) 
in /some/file.php on line 23 

錯誤消息中提到的行包含header()setcookie()電話。

這可能是什麼原因?以及如何解決它?

+0

頭()之前沒有輸出將回聲這意味着所有的回聲statment在上述標題中刪除它在谷歌 – wild

+0

只需鍵入「已經發送了頭」,然後點擊搜索 –

+0

http://stackoverflow.com/questions/8028957/如何修復頭文件已發送錯誤在PHP/8028987#8028987 –

回答

1

當您在頁面中寫入後,使用標頭時會導致此類問題。我想你的代碼可能看起來像::

<html> 
    <head> 
    <title> title </title> 
    ......... 
    </head> 

    <body> 
    ..... 
    <?php 
     header() // checking some header 
    ?> 
    ..... 
    </body> 
</html> 

如果是這樣,使用頭()之前html或任何種類的回聲或編寫代碼。但這是不正確的解決方案。您可以使用ob_start。這是最好的解決方案。檢查this