Зачем нужны контейнеры в Slim v3? Пересмотрел/перечитал массу документации и slim-скелетонов и все равно до конца не понял что это и чем может быть полезно. Пока понимание такое:
1. Для хранения каких-то глобальных переменных/настроек, доступных отовсюду.
2. Для переопределения обработки ошибок notAllowedHandler, notFoundHandler, errorHandler и тд тп
Какие еще могут быть варианты использования этих контейнеров? Видел в том числе использования в виде middleware (например,
тут используют jsonResponse), непонятно почему не сам middleware как он есть. Очень хотелось бы увидеть реальные примеры.
Заранее спасибо :)