Принцип использования контейнеров в Slim 3?

Зачем нужны контейнеры в Slim v3? Пересмотрел/перечитал массу документации и slim-скелетонов и все равно до конца не понял что это и чем может быть полезно. Пока понимание такое:

1. Для хранения каких-то глобальных переменных/настроек, доступных отовсюду.
2. Для переопределения обработки ошибок notAllowedHandler, notFoundHandler, errorHandler и тд тп

Какие еще могут быть варианты использования этих контейнеров? Видел в том числе использования в виде middleware (например, тут используют jsonResponse), непонятно почему не сам middleware как он есть. Очень хотелось бы увидеть реальные примеры.

Заранее спасибо :)
  • Вопрос задан
  • 964 просмотра
Пригласить эксперта
Ответы на вопрос 1
dmitriylanets
@dmitriylanets
веб-разработчик
при рефакторинге использовал контейнеры для возможности тестирования системы
было:
function some (){
global $user;
}

стало:
function some (){
$user = $this->getConteiner()->get('user');
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы