2013-08-27 48 views
0

我正在開發網站。我在我改變頭信息的某些頁面,當我主持它顯示以下錯誤爲什麼不用PHP獲取錯誤

Warning: Cannot modify header information - headers already sent by (output started at D:\inetpub\vhosts\jrmds.in\httpdocs\functions\dateprint.php:1) in D:\inetpub\vhosts\jrmds.in\httpdocs\articlemessage.php on line 8 

但是,當我在我的本地機器上運行相同的代碼,我沒有得到任何錯誤。我知道這是錯誤的,但我沒有在我的本地機器上得到它。如何在本地機器上獲取該錯誤,以便我可以在本地機器上解決這種類型的錯誤,然後將其上載到服務器上,而不是上載到服務器上,然後知道某些輸出已經發送,然後我正在更改標題。在php.ini文件中下面的值

設置爲

error_reporting = E_ALL | E_STRICT 
+0

本地機器與您的主機配置不一樣。也許一些關於'date'的擴展名缺失。在你的主機和本地做'phpinfo()'並進行比較。 – EmCo

回答

5

您正在尋找display_errors

使用在你的PHP文件中的以下命令(或直接設置它的的php.ini內):

ini_set('display_errors', 1); 

從手冊:

這決定是否應將錯誤輸出到屏幕上作爲輸出的 的部分,或者是否應將其隱藏。

值「stderr」將錯誤發送到stderr而不是stdout。價值 從PHP 5.2.4起可用。在較早的版本中,該指令是布爾型的 。

注:

這是爲了支持您的開發和不應該 在生產系統中使用(例如連接到互聯網的系統)的特徵。

+0

我把ini_set('display_errors',1)但仍然沒有得到這些錯誤。 我有下面的文件結構 header.php包含菜單和徽標部分 ,然後index.php我在其中包含header.php在最上面的位置,然後我檢查會話變量,如果它不是設置我重定向用戶使用標題(「位置:...」)否則用戶有效查看頁面。但我沒有得到那個說「**輸出已經發送並且不能修改標題」的錯誤**,但是我確實在服務器上放置了該網站。 –

+0

@SumitPMakwana你把我給你的命令放在哪裏? – Itay

2

你應該對生產 的display_errors使用的display_errors指令在php.ini

的display_errors =關閉=開發展(可選)。

+0

display_error也已打開。 –

相關問題