2009-04-21 4 views
7

У меня есть установка WAMP на моей машине, и я разрабатываю сайт PHP в этом. Может ли кто-нибудь сказать мне, какие настройки нужно изменить, чтобы показать все ошибки/предупреждения в браузере?WAMP: Как показывать предупреждающие сообщения в браузере?

Заранее спасибо

ответ

9

Вам необходимо установить и error_reporting, и display_errors. Они могут быть установлены в php.ini, в Apache (если вы используете PHP как модуль Apache) или во время выполнения, хотя если вы установите его во время выполнения, то это не повлияет на некоторые типы ошибок, таких как как ошибки разбора.

Для переносимости - то есть, если вы хотите, чтобы установить это в приложении - попробуйте установить их в .htaccess:

# note: PHP constants such as E_ALL can't be used when setting it in Apache 
php_value error_reporting 2147483647 

php_flag display_errors on 

В качестве альтернативы вы можете установить их в httpd.conf

display_errors гарантирует, что все сообщенные ошибки фактически выводятся в браузер (на реальном сервере, типично для их регистрации в файл). error_reporting указывает, какие типы ошибок должны регистрироваться/отображаться.

Для живого сервера обычно не рекомендуется публиковать ошибки (но вы все равно можете их зарегистрировать). В любом случае, по-прежнему рекомендуется установить значение error_reporting для более инклюзивного значения (2147483647 - самое инклюзивное значение, которое возможно сейчас и в будущем в соответствии с документами PHP), поскольку игнорирование ошибок, как правило, является плохой идеей.

1

Найти файл php.ini, прокрутите вниз, читая комментарии. Существует глобальная настройка для включения/выключения вывода ошибок. Измените его соответствующим образом. Перезапустите свой Apache.

2

Первый щелчок на значке тембра на панели задач. Затем нажмите на папку «PHP», а затем папку «Настройки PHP». Убедитесь, что «выставить PHP» и «показывать ошибки» оба проверяются. Вы можете установить другие параметры ошибки, такие как «ошибки дорожки» и «отображать ошибки запуска».

0

Открыть php.ini и найти дополнительную информацию error_reporting.

Изменить его на E_ALL & ~E_NOTICE.

Это покажет все ошибки и предупреждения, но никаких уведомлений.

Лично я всегда использую E_ALL на своих машинах разработки, потому что часто уведомления являются признаками потенциальных проблем с кодом.

+0

Я действительно оставил бы уведомления. Приятно знать, когда вы используете неопределенные переменные, поскольку они обычно означают, что вы сделали опечатку. –

1

Я всегда использую этот код:

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 

Если вы пишете код с использованием объектно-ориентированного программирования PHP, а затем создать новый Methond ShowError() и вызвать его в каждый файл, который вам нужен.

0

Если кто-то использует CodeIgniter, передайте этот код в конструкторе контроллера. Это решит вашу проблему.

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 
Смежные вопросы