Довольно часто на сайте появляются ошибки, которые хотелось бы скрыть от глаз. Или наоборот – понять, что происходит с кодом, потому что ни одна ошибка не показывается. В этой статье я покажу основные способы отобразить / скрыть ошибки на сайте.
Убираем отображение ошибки
В PHP есть всего лишь один оператор, который поддерживает систему управления ошибками – это знак @. Он позволяет проигнорировать любое сообщение об ошибке. Его нужно ставить ПЕРЕД выражением, которое может её содержать.
В примере специально допущена ошибка, но она НЕ будет отображена
$value = @$var[$key];
Отображаем скрытую ошибку
Также можно перед проверяемым скриптом PHP можно вставить настройку параметра отображения ошибок (display_errors). Он может приобретать значение либо On (показывать), либо Off (скрыть).
ini_set('display_errors','On'); error_reporting('E_ALL');
И соответственно после кода, который проверялся на ошибки, выставить параметр обратно.
ini_set('display_errors','Off');
Например, Вы хотите увидеть ошибки в скрипте
ini_set('display_errors', 'On'); // сообщения с ошибками будут показываться error_reporting(E_ALL); // E_ALL - отображаем ВСЕ ошибки $value = $var[$key]; // пример ошибки ini_set('display_errors', 'Off'); // теперь сообщений НЕ будет
Можно выставить наоборот (в верхнем off, а в нижнем on), чтобы в конкретном отрезке кода ошибки НЕ отображались.