2014-02-12 2 views
3

Мне нужно проверить некоторые функции на реальном сервере, и очевидно, что они отключили ошибки на каком-то глобальном уровне.Как убедиться, что отображаются ошибки сервера?

Проблема в том, что я не могу работать, когда я не знаю, что вызывает ошибку. Как я могу убедиться, что отображаются исключения, а не только 500 кода.

Я попытался поместить эти две строки в начало моего скрипта, но он все еще пуст.

<?php 

ini_set('error_reporting', E_ALL); 
error_reporting(E_ALL); 

throw new Exception('Fatal Error'); // nothing is outputed 
+0

'ini_set ('display_errors', '1'); error_reporting (E_ALL); 'должен делать. – Prasanth

+0

Вы получаете что-нибудь в своих журналах? –

+0

Нет ли канонического вопроса для сообщения об ошибках? http://stackoverflow.com/tags/php/info в разделе «У меня типичная проблема« не работает ». Что мне делать, прежде чем задавать вопрос?». Также http://stackoverflow.com/questions/12769982/reference-what-does-this-error-mean-in-php/12772851#12772851, http://stackoverflow.com/questions/5680831/php-does-not -display-error-messages, http://stackoverflow.com/questions/845021/how-to-get-useful-error-messages-in-php, http://stackoverflow.com/search?q=%5Bphp% 5D + White + Страница + Экран + Of + Death –

ответ

2

Две линии в значительной степени идентичны, поэтому удалите один из них.

Вам также нужен ini_set("display_errors",1);, чтобы фактически отображать ошибки.

Обратите внимание, что это не будет работать для синтаксических ошибок в текущем файле, поскольку они возникают на этапе синтаксического анализа, до того, как будут выполнены какие-либо операторы.

+0

Приятно видеть упоминание об ошибках в текущем файле. – Anigel

+0

Спасибо, сейчас работает. Но я не понимаю второго предложения. Как он * не будет * работать в текущем файле? Он работает в текущем файле для меня просто отлично. – sed

+0

Если у вас есть синтаксическая ошибка, она не будет пытаться ее запустить, поэтому отчет об ошибках не будет установлен, и ничего не появится. –

Смежные вопросы