loadFromExtension('framework', array( 'secret' => 'S0ME_SECRET', // 'templating' => [ // 'engine' => [ // 'twig' // ], // ], )); // $c->loadFromExtension('twig', [ // 'default_path' => __DIR__.'/../templates', // ]); } // Configuration des routes protected function configureRoutes(RouteCollectionBuilder $routes) { $routes->add('/random/{limit}', 'kernel:randomAction'); $routes->add('/twig', 'kernel:twigAction'); } public function twigAction() { $container = $this->getContainer(); $twig = $container->get('twig'); return new Response($twig->render('index.html.twig')); } // Définition d'une route public function randomAction($limit) { return new JsonResponse(array( 'number' => rand(0, $limit) )); } // Configuration des répertoires de cache et logs // Ces répertoires ne devrait pas être contenus dans la racine "web" public function getCacheDir() { return __DIR__.'/../var/cache/'.$this->getEnvironment(); } public function getLogDir() { return __DIR__.'/../var/logs'; } } // Définition de l'environnement $kernel = new AppKernel('dev', true); $request = Request::createFromGlobals(); $response = $kernel->handle($request); $response->send(); $kernel->terminate($request, $response);