New feature: caching twig templates
This commit is contained in:
parent
79b8c58065
commit
621fadd7c2
|
@ -20,6 +20,7 @@ class Kernel
|
|||
private string $configDir;
|
||||
private string $projectDir;
|
||||
private string $templateDir;
|
||||
private string $cacheDir;
|
||||
private Router $router;
|
||||
|
||||
/**
|
||||
|
@ -70,6 +71,22 @@ class Kernel
|
|||
$this->templateDir = $templateDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getCacheDir(): string
|
||||
{
|
||||
return $this->cacheDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $cacheDir
|
||||
*/
|
||||
public function setCacheDir(string $cacheDir): void
|
||||
{
|
||||
$this->cacheDir = $cacheDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Router
|
||||
*/
|
||||
|
|
|
@ -6,6 +6,7 @@ namespace JeroenED\Framework;
|
|||
|
||||
use Mehrkanal\EncoreTwigExtension\Extensions\EntryFilesTwigExtension;
|
||||
use Symfony\WebpackEncoreBundle\Asset\EntrypointLookup;
|
||||
use Twig\Cache\FilesystemCache;
|
||||
use Twig\Environment;
|
||||
use Twig\Extra\Intl\IntlExtension;
|
||||
use Twig\Loader\FilesystemLoader;
|
||||
|
@ -16,11 +17,13 @@ class Twig
|
|||
{
|
||||
private Environment $environment;
|
||||
private Kernel $kernel;
|
||||
|
||||
public function __construct(Kernel $kernel)
|
||||
{
|
||||
|
||||
$loader = new FilesystemLoader([$kernel->getTemplateDir()]);
|
||||
$cache = new FilesystemCache($kernel->getCacheDir() . '/twig');
|
||||
$this->environment = new Environment($loader);
|
||||
$this->environment->setCache($cache);
|
||||
$this->kernel = $kernel;
|
||||
$this->addExtensions();
|
||||
$this->addFunctions();
|
||||
|
|
|
@ -10,6 +10,7 @@ $kernel = new Kernel();
|
|||
$kernel->setProjectDir(getcwd());
|
||||
$kernel->setConfigDir(getcwd() . '/config/');
|
||||
$kernel->setTemplateDir(getcwd() . '/templates/');
|
||||
$kernel->setCacheDir(getcwd() . '/cache/');
|
||||
$kernel->parseDotEnv($kernel->getProjectDir() . '/.env');
|
||||
|
||||
ini_set('date.timezone', $_ENV['TZ']);
|
||||
|
|
Loading…
Reference in New Issue