Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

# CodeIgniter User Guide Version 2.1.3

Search User Guide

# Обработка ошибок

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

Примечание: По умолчанию CodeIgniter выводит все ошибки PHP. Вы можете изменить это поведение, когда завершите разработку. Вы найдете функцию error_reporting() вверху файла index.php. Выключение вывода сообщений об ошибках не влияет на логгирование.

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

Следующие функции позволят вам генерировать сообщения об ошибках:

## show_error('message' [, int $status_code= 500 ] )

Эта функция выведет сообщение об ошибке, в соответствии с шаблоном:

application/errors/`error_general.php`

Опциональный параметр $status_code определяет, какой код статуса HTTP должен быть отправлен с этой ошибкой.

## show_404('page' [, 'log_error'])

Эта фунция отображает сообщение 404 (страница не найдена), в соответствии с шаблоном:

application/errors/`error_404.php`

Функция ожидает строку с файловым путем к странице, которая не была найдена. Помните, что CodeIgniter автоматически показывает сообщение 404, если не найден контроллер.

CodeIgniter автоматически логгирует любые вызовы show_404(). Установка второго опционального параметра в FALSE выключит логгирование.

## log_message('level', '`message`')

Эта фунция позволяет вам записать сообщение в файл лога. Вы должны передать один из трех «уровней» в первом параметре, указывающий на тип ошибки (debug, error, info) вместе с сообщением во втором параметре. Например:

`if ($some_var == "")
{
log_message('error', 'Some variable did not contain a value.');
}
else
{
log_message('debug', 'Some variable was correctly set');
}
log_message('info', 'The purpose of some variable is to provide some value.');
`

Есть три типа сообщений:

1. Сообщения об ошибках. Это актуальные ошибки, такие как ошибки PHP или пользовательские ошибки.
2. Сообщения отладки. Это сообщения, связанные с отладкой. Например, если класс инициализировался, вы можете записать это в отладочную информацию.
3. Информационные сообщения. Они имеют наименьший приоритет, просто давая информацию о каких-то процессах. CodeIgniter не генерирует такие сообщения, но вы можете использовать их в вашем приложении.

Примечаие: Чтобы сообщения записывались, вы должны убедиться в том, что директория logs имеет права на запись. Кроме того, вы должны указать порог логгирования в application/config/config.php. Вы можете, к примеру, выводить только сообщения об ошибках, но не два других типа. Если вы установите этот параметр в ноль, логгирование будет выключено.

### Поделиться

Переведено в компании Аринт.

# Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

## Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter