我有以下的PHP代碼行:PHP錯誤引發
<?
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
if(file_exist('menu.xml'){
print("file exist");
$xml = simplexml_load_file('menu.xml');
print_r($xml);
}else{
print("cant find menu.xml");
exit('failed to open menu.xml');
}
?>
當我打開這並不顯示在瀏覽器的任何東西(我希望錯誤消息的到來)。我知道在if語句結尾處有一個「)」缺失,但爲什麼不在第一個地方拋出錯誤。 一旦我修復它說未定義的函數file_exist()?根據php Simplexml文檔file_exist是一個有效的func。
您可能會期望它,但我不希望您使用速記公開標籤' ?>',尤其是在您的情況下,因爲您正在使用XML。它是'file_exists',注意's''。 – Shef
你的問題是關於'file_exist'還是關於爲什麼PHP不會爲語法錯誤拋出錯誤? – deceze
確保short_open_tags已打開,否則可能不會將其解釋爲所有的PHP代碼 –