Verzeichnisstruktur phpBB-3.1.0


Veröffentlicht
27.10.2014

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

StringLoader.php

Zuletzt modifiziert: 09.10.2024, 12:58 - Dateigröße: 1.34 KiB


01  <?php
02   
03  /*
04   * This file is part of Twig.
05   *
06   * (c) 2012 Fabien Potencier
07   *
08   * For the full copyright and license information, please view the LICENSE
09   * file that was distributed with this source code.
10   */
11  class Twig_Extension_StringLoader extends Twig_Extension
12  {
13      /**
14       * {@inheritdoc}
15       */
16      public function getFunctions()
17      {
18          return array(
19              new Twig_SimpleFunction('template_from_string', 'twig_template_from_string', array('needs_environment' => true)),
20          );
21      }
22   
23      /**
24       * {@inheritdoc}
25       */
26      public function getName()
27      {
28          return 'string_loader';
29      }
30  }
31   
32  /**
33   * Loads a template from a string.
34   *
35   * <pre>
36   * {{ include(template_from_string("Hello {{ name }}")) }}
37   * </pre>
38   *
39   * @param Twig_Environment $env      A Twig_Environment instance
40   * @param string           $template A template as a string
41   *
42   * @return Twig_Template A Twig_Template instance
43   */
44  function twig_template_from_string(Twig_Environment $env, $template)
45  {
46      static $loader;
47   
48      if (null === $loader) {
49          $loader = new Twig_Loader_String();
50      }
51   
52      $current = $env->getLoader();
53      $env->setLoader($loader);
54      try {
55          $template = $env->loadTemplate($template);
56      } catch (Exception $e) {
57          $env->setLoader($current);
58   
59          throw $e;
60      }
61      $env->setLoader($current);
62   
63      return $template;
64  }
65