PHP: Включаем вывод ошибок или отключаем его (htaccess, php.ini, code)

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

Способ 1: Использование файла .htaccess
Для этого откройте файл .htaccess который располагается в корне Вашего сайта (если его нет, то создайте его). И добавьте в него следующие строчки:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on

Если Вам нужно отключить вывод ошибок — замените слово on на off.

Способ 2: С помощью PHP кода
Вы можете включать или отключать вывод ошибок в определенных файлах с помощью вызова PHP функций.

error_reporting(E_ALL); //вывод всех ошибок
error_reporting(0); //отключение ошибок
error_reporting(E_ALL & ~E_NOTICE); //вывод ошибок, но не предупреждений типа Notice

Все возможные аргументы Вы можете найти в документации на сайта php.net. Иногда так же может быть полезна команда ini_set:

ini_set('display_errors', 1); //включение ошибок

Однако данная команда обычно заблокирована.

Способ 3: Правка файла php.ini
Иногда хостинг провайдер открывает Вам доступ к файлу конфигурации PHP — php.ini. Доступ может быть открыт полностью, либо частично. Если Вы счастливый обладатель такого хостинга, то включить вывод ошибок можно изменив настройку display_errors.

display_errors = on

После чего необходимо перезагрузить apache.

Примечание:
Иногда редактирование файла php.ini вынесено в панель администрирования хостинга. Если Вам не помог ни один описанный способ, зайдите в панель управления хостингом и постарайтесь найти вкладку «настройки php», если данная вкладка присутствует, то скорее всего внутри нее будет опция, позволяющая включать или отключать вывод ошибок.

Запись опубликована в рубрике PHP с метками , , , , , , , , , , , . Добавьте в закладки постоянную ссылку.