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

Array.php

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


01  <?php
02   
03  /*
04   * This file is part of Twig.
05   *
06   * (c) 2009 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   
12  /**
13   * Loads a template from an array.
14   *
15   * When using this loader with a cache mechanism, you should know that a new cache
16   * key is generated each time a template content "changes" (the cache key being the
17   * source code of the template). If you don't want to see your cache grows out of
18   * control, you need to take care of clearing the old cache file by yourself.
19   *
20   * @author Fabien Potencier <fabien@symfony.com>
21   */
22  class Twig_Loader_Array implements Twig_LoaderInterface, Twig_ExistsLoaderInterface
23  {
24      protected $templates;
25   
26      /**
27       * Constructor.
28       *
29       * @param array $templates An array of templates (keys are the names, and values are the source code)
30       *
31       * @see Twig_Loader
32       */
33      public function __construct(array $templates)
34      {
35          $this->templates = array();
36          foreach ($templates as $name => $template) {
37              $this->templates[$name] = $template;
38          }
39      }
40   
41      /**
42       * Adds or overrides a template.
43       *
44       * @param string $name     The template name
45       * @param string $template The template source
46       */
47      public function setTemplate($name, $template)
48      {
49          $this->templates[(string) $name] = $template;
50      }
51   
52      /**
53       * {@inheritdoc}
54       */
55      public function getSource($name)
56      {
57          $name = (string) $name;
58          if (!isset($this->templates[$name])) {
59              throw new Twig_Error_Loader(sprintf('Template "%s" is not defined.', $name));
60          }
61   
62          return $this->templates[$name];
63      }
64   
65      /**
66       * {@inheritdoc}
67       */
68      public function exists($name)
69      {
70          return isset($this->templates[(string) $name]);
71      }
72   
73      /**
74       * {@inheritdoc}
75       */
76      public function getCacheKey($name)
77      {
78          $name = (string) $name;
79          if (!isset($this->templates[$name])) {
80              throw new Twig_Error_Loader(sprintf('Template "%s" is not defined.', $name));
81          }
82   
83          return $this->templates[$name];
84      }
85   
86      /**
87       * {@inheritdoc}
88       */
89      public function isFresh($name, $time)
90      {
91          $name = (string) $name;
92          if (!isset($this->templates[$name])) {
93              throw new Twig_Error_Loader(sprintf('Template "%s" is not defined.', $name));
94          }
95   
96          return true;
97      }
98  }
99