Как Slim контейнер доступен в методе маршрута - PullRequest
0 голосов
/ 08 января 2019

Я начинаю строить свой собственный фреймворк. В настоящее время я провожу исследование шаблона проектирования MVC и изучал Laravel и CodeIgniter. Пока я не увидел Slim и его документацию. У меня есть запас на этой части, потому что я не понимаю, как это работает:

$app = new \Slim\App();
$container = $app->getContainer();
$container['myService'] = function() {
    // return instance of myService
};

$app->get('/foo', function ($req, $res, $args) {
    $myService = $this->myService; // how did Slim do this?
    return $res;
});

При таком способе получения контейнера, как «myService» доступен в методе маршрута, когда контейнер должен находиться вне области видимости? Я не могу найти его в классе Slim App.

...