Для расширения Slim Twig требуется экземпляр router
(не маршрут) для пользовательских функций шаблона, таких как path_for()
и base_url()
.
Пример:
// Register Twig View helper
$container['view'] = function ($c) {
$view = new \Slim\Views\Twig('path/to/templates', [
'cache' => 'path/to/cache'
]);
// Instantiate and add Slim specific extension
$router = $c->get('router');
$uri = \Slim\Http\Uri::createFromEnvironment(new \Slim\Http\Environment($_SERVER));
$view->addExtension(new \Slim\Views\TwigExtension($router, $uri));
return $view;
};
Пожалуйста, прочитайте документацию slimphp / Twig-View .