Конфигурация

Вы можете настроить определенные поведения Flight, установив значения конфигурации через метод set.

Flight::set('flight.log_errors', true);

Доступные настройки конфигурации

Ниже приведен список всех доступных параметров конфигурации:

  • flight.base_url ?string - Переопределение базового URL запроса. (по умолчанию: null)
  • flight.case_sensitive bool - Учет регистра при сопоставлении URL. (по умолчанию: false)
  • flight.handle_errors bool - Разрешить Flight обрабатывать все ошибки внутренне. (по умолчанию: true)
  • flight.log_errors bool - Записывать ошибки в файл журнала сервера веб-сервера. (по умолчанию: false)
  • flight.views.path string - Каталог, содержащий файлы шаблонов представлений. (по умолчанию: ./views)
  • flight.views.extension string - Расширение файла шаблона представления. (по умолчанию: .php)
  • flight.content_length bool - Установить заголовок Content-Length. (по умолчанию: true)
  • flight.v2.output_buffering bool - Использовать устаревшее буферизацию вывода. См. переход к v3. (по умолчанию: false)

Конфигурация загрузчика

Существует еще один параметр конфигурации для загрузчика. Это позволит вам автоматически загружать классы с _ в имени класса.

// Включить загрузку классов с подчеркиваниями
// Установлено по умолчанию в true
Loader::$v2ClassLoading = false;

Переменные

Flight позволяет вам сохранять переменные, чтобы их можно было использовать в любом месте вашего приложения.

// Сохраните вашу переменную
Flight::set('id', 123);

// В другом месте в вашем приложении
$id = Flight::get('id');

Чтобы проверить, была ли установлена переменная, вы можете сделать следующее:

if (Flight::has('id')) {
  // Сделайте что-то
}

Вы можете очистить переменную, сделав следующее:

// Очищает переменную id
Flight::clear('id');

// Очистить все переменные
Flight::clear();

Flight также использует переменные в целях конфигурации.

Flight::set('flight.log_errors', true);

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

Ошибки и исключения

Все ошибки и исключения перехватываются Flight и передаются методу error. По умолчанию выполняется отправка общего ответа HTTP 500 Internal Server Error с некоторой информацией об ошибке.

Вы можете изменить это поведение под свои нужды:

Flight::map('error', function (Throwable $error) {
  // Обработать ошибку
  echo $error->getTraceAsString();
});

По умолчанию ошибки не регистрируются на веб-сервере. Вы можете включить это, изменив конфигурацию:

Flight::set('flight.log_errors', true);

Не найдено

Когда URL не найден, Flight вызывает метод notFound. По умолчанию выполняется отправка ответа HTTP 404 Not Found с простым сообщением.

Вы можете изменить это поведение под свои нужды:

Flight::map('notFound', function () {
  // Обработать не найденный
});