Фреймворк CodeIgniter Version 2.1.3


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

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. Вы можете, к примеру, выводить только сообщения об ошибках, но не два других типа. Если вы установите этот параметр в ноль, логгирование будет выключено.

    Поддержать сайт на родительском проекте КГБ