2011-02-11 76 views
2

我試圖讓PHP在OSX開發過程中顯示語法等錯誤。在osx上顯示php錯誤

我編輯了我的php.ini,如下所示;

display_errors = On 
error_reporting = E_ALL 

但是,我仍然無法獲取顯示的錯誤。我只是停留在一個空白頁面。即使使用最簡單的頁面也會發生這種情況;

<?php 

echo "ook" 

?> 

這應該會引發錯誤。

如果有人對如何解決這個問題有任何想法,我將不勝感激。我已經明確編輯了正確的php.ini,因爲phpinfo文件告訴我。

+2

不會拋出一個錯誤http://codepad.org/9XJYtZab – kjy112 2011-02-11 01:25:48

+0

不應該這告訴我,雖然分號丟失? – doubleplusgood 2011-02-11 01:27:09

+0

theres no error ... – 2011-02-11 01:27:50

回答

1

所以我想清楚是什麼問題。我的phpinfo文件告訴我,我正在使用php.ini,所以我一直在編輯它。我發現的是,在同一個文件夾中還有一個php.ini.default文件。我刪除了這個文件,現在顯示錯誤。 :)

1

如果腳本的語法是無效的,你可能會得到死亡的白色屏幕,而不是一個錯誤。當您測試錯誤報告時,請嘗試使用除以零之類的其他錯誤。

你的php.ini行應爲error_reporting = E_ALL,順便說一句。 display_errors應等於0或1

編輯:哎呀!更正事實錯誤。

2

我也想說明的是,PHP結束標記(?>)被認爲是一個明確的分號(;)...

下面的腳本是有效的:

<?php 
echo "Hello"; 
echo "There" 
?> 

雖然以下不是:

<?php 
echo "Hello"; 
echo "There" 
1

我有一個相當愚蠢的問題,也許別人也可能遇到。在我的php.ini我意外地寫道:

error_reporting = E_ALL & E_STRICT 

代替:

error_reporting = E_ALL | E_STRICT 

其中,在過濾所有的錯誤消息。花了我幾分鐘找到那個愚蠢的錯誤。希望我能救別人的時間;)。

0

沒有爲分號沒有要求(),表示最後一行在PHP中,它不是一個錯誤,如下面的代碼有沒有錯誤,由於缺少分號:

<?php echo 'test' ?> 

或者

<?=$x ?> 

或者

<?php 

echo "test code" 
?> 

或者

<?php 

echo "Test Code"