Не могу до конца понять как ведут себя классы. Например на фреймворке slim в index.php пишу:
// мой класс
class Home {
    public function index(){
        return 'Home controller';
    }
}
//мой роутер
$app->get('/', function (Request $request, Response $response) {
    $response = $this->view->render($response, 'index.phtml');
    return $response;
});
В роутере я вроде бы ничего в шаблон не передаю. Но... в этом же шаблоне (index.phtml) я могу написать например 
$test = new Home; var_dump($tes); и это работает. Это меня смущает, я не ожидал что шаблон будет иметь доступ к классу. Буду признателен за объяснение.