Предопределённые константы
PHP Manual
PHP Manual»Обработка ошибок»Предопределённые константы

Предопределённые константы

Следующие константы доступны как часть ядра PHP.

Битовая маска из символических имён или числовых эквивалентов следующих констант устанавливает уровень отчёта об ошибках. Отчёт о конкретных типах ошибок включается путём установки или сброса битов маски при комбинации констант побитовыми операторами.

Подсказка

В файле php.ini вместо буквальных числовых значений разрешается указывать названия констант с эквивалентными значениями. В файле php.ini распознаются только побитовые операторы |, ~, ^, & и оператор отрицания !.

Внимание

Символические имена констант не поддерживаются вне PHP-среды, например, в файле httpd.conf вместо констант потребуется указать вычисленное значение битовой маски.

E_ERROR (int)
Фатальные ошибки времени выполнения. Значение указывает на неустранимые ошибки наподобие проблемы выделения памяти. При критической ошибке выполнение скрипта прерывается. Значение константы: 1
E_WARNING (int)
Предупреждения времени выполнения, некритические ошибки. Выполнение скрипта не прерывается. Значение константы: 2
E_PARSE (int)
Синтаксические ошибки на этапе компиляции. Ошибки разбора генерирует только синтаксический анализатор. Значение константы: 4
E_NOTICE (int)
Уведомления времени выполнения. Значение указывает, что скрипт не нарушает формальные правила синтаксиса и не ломает выполнение программы, но содержит возможную ошибку, которая делает результат работы программы непредсказуемым. Значение константы: 8
E_CORE_ERROR (int)
Фатальные ошибки при запуске и инициализации PHP. Ошибки этого уровня аналогичны ошибкам уровня E_ERROR, но генерируются ядром PHP. Значение константы: 16
E_CORE_WARNING (int)
Предупреждения при запуске и инициализации PHP, некритические ошибки. Ошибки этого уровня аналогичны ошибкам уровня E_WARNING, но генерируются ядром PHP. Значение константы: 32
E_COMPILE_ERROR (int)
Фатальные ошибки на этапе компиляции. Ошибки этого уровня аналогичны ошибкам уровня E_ERROR, но генерируются движком Zend. Значение константы: 64
E_COMPILE_WARNING (int)
Предупреждения на этапе компиляции, некритические ошибки. Ошибки этого уровня аналогичны ошибкам уровня E_WARNING, но генерируются движком Zend. Значение константы: 128
E_DEPRECATED (int)
Уведомления времени выполнения об устаревании. Ошибки этого уровня предупреждают о коде, который перестанет работать в следующих версиях PHP. Значение константы: 8192
E_USER_ERROR (int)
Пользовательские сообщения об ошибках. Ошибки этого уровня аналогичны ошибкам уровня E_ERROR, но генерируются в PHP-коде вызовом функции trigger_error(). Значение константы: 256
Внимание

С PHP 8.4.0 передача константы в функцию trigger_error() устарела. Альтернатива — ключевое слово throw и исключения Exception или вызов функции exit().

E_USER_WARNING (int)
Пользовательские предупреждения. Ошибки этого уровня аналогичны ошибкам уровня E_WARNING, но генерируются в PHP-коде вызовом функции trigger_error(). Значение константы: 512
E_USER_NOTICE (int)
Пользовательские уведомления. Ошибки этого уровня аналогичны ошибкам уровня E_NOTICE, но генерируются в PHP-коде вызовом функции trigger_error(). Значение константы: 1024
E_USER_DEPRECATED (int)
Пользовательские сообщения об устаревании. Ошибки этого уровня аналогичны ошибкам уровня E_DEPRECATED, но генерируются в PHP-коде вызовом функции trigger_error(). Значение константы: 16384
E_STRICT (int)
Ошибки времени выполнения. На этом уровне PHP выдаёт предложения об изменениях кода, которые повысят совместимость кода с новыми версиями PHP. Значение константы: 2048
Внимание

С PHP 8.4.0 ошибки этого уровня устарели, PHP перестал выдавать рекомендации.

E_RECOVERABLE_ERROR (int)
Устаревшие «исключения» движка, которые соответствуют перехватываемым фатальным ошибкам. Ошибки этого уровня похожи на ошибки Error, но отлавливаются пользовательским обработчиком ошибок: set_error_handler(). Поведение необработанной ошибки этого уровня аналогично поведению ошибок уровня E_ERROR. Значение константы: 4096

Замечание: PHP фактически не выдаёт ошибки этого уровня, единственный пример — ошибка при интерпретации внутреннего объекта (object) как значения с типом bool. До PHP 8.4.0 такую ошибку, например, генерировало включение объекта GMP в условное выражение.

E_ALL (int)
Битовая маска, которая включает отчёт обо всех ошибках, предупреждениях и уведомлениях. Значение константы: 30719
Внимание

Значение константы до PHP 8.4: 32767

To Top