Vous êtes connecté en tant que anonymous Se Deconnecter
extensions = array_merge($this->extensions, (array) $this->config->get('extensions', [])); return $this->getEngine()->render($file, $data); } /** * getLoader * * @return \Twig_LoaderInterface */ public function getLoader() { if (!$this->loader) { if ($this->config->get('path_separator')) { $this->loader = new TwigFilesystemLoader( iterator_to_array(clone $this->getPaths()), $this->config->get('path_separator') ); } else { $this->loader = new \Twig_Loader_Filesystem(iterator_to_array(clone $this->getPaths())); } } return $this->loader; } /** * setLoader * * @param \Twig_LoaderInterface $loader * * @return TwigRenderer Return self to support chaining. */ public function setLoader(\Twig_LoaderInterface $loader) { $this->loader = $loader; return $this; } /** * addExtension * * @param \Twig_ExtensionInterface $extension * * @return static */ public function addExtension(\Twig_ExtensionInterface $extension) { $this->extensions[] = $extension; return $this; } /** * getTwig * * @param bool $new * * @return \Twig_Environment */ public function getEngine($new = false) { if (!($this->engine instanceof \Twig_Environment) || $new) { $this->engine = new \Twig_Environment($this->getLoader(), $this->config->toArray()); foreach (GlobalContainer::getExtensions() as $extension) { $this->engine->addExtension(clone $extension); } foreach ($this->extensions as $extension) { $this->engine->addExtension($extension); } foreach (GlobalContainer::getGlobals() as $name => $value) { $this->engine->addGlobal($name, $value); } if ($this->config->get('debug')) { $this->engine->addExtension($this->getDebugExtension()); } } return $this->engine; } /** * setTwig * * @param \Twig_Environment $twig * * @return TwigRenderer Return self to support chaining. */ public function setEngine($twig) { if (!($twig instanceof \Twig_Environment)) { throw new \InvalidArgumentException('Engine object should be Twig_environment'); } $this->engine = $twig; return $this; } /** * Method to get property DebugExtension * * @return \Twig_Extension_Debug */ public function getDebugExtension() { if (!$this->debugExtension) { $this->debugExtension = new \Twig_Extension_Debug(); } return $this->debugExtension; } /** * Method to set property debugExtension * * @param \Twig_ExtensionInterface $debugExtension * * @return static Return self to support chaining. */ public function setDebugExtension(\Twig_ExtensionInterface $debugExtension) { $this->debugExtension = $debugExtension; return $this; } /** * Method to get property Extensions * * @return \Twig_ExtensionInterface[] */ public function getExtensions() { return $this->extensions; } /** * Method to set property extensions * * @param \Twig_ExtensionInterface[] $extensions Twig extenions * * @return static Return self to support chaining. */ public function setExtensions($extensions) { $this->extensions = $extensions; return $this; } }