Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung zur Verwendung der ThinkPHP-Vorlagen-Engine

Ausführliche Erklärung zur Verwendung der ThinkPHP-Vorlagen-Engine

墨辰丷
墨辰丷Original
2018-05-22 16:08:042357Durchsuche

Das thinkphp-System unterstützt native PHP-Vorlagen und verfügt über eine integrierte, effizient kompilierte Template-Engine, die standardmäßig vom System verwendet wird. Zur detaillierten Verwendung von Tags dieser Template-Engine Weitere Informationen finden Sie im Abschnitt zur Template-Engine.

ThinkPHP verfügt über eine integrierte Vorlagen-Engine, um Vorlagendateien zu definieren und erweiterte Funktionen wie das Laden von Dateien, das Vorlagenlayout und die Vorlagenvererbung zu nutzen.

Jede Vorlagendatei generiert während der Ausführung eine kompilierte Cache-Datei, bei der es sich tatsächlich um eine PHP-Datei handelt, die ausgeführt werden kann.

PHP

/*index/controller/example.php*/
 
use think\Controller;
 
class test extends Index {
 
  public function template (){
    $name = 'Jerry';
    $allName = [
      0 => "Jerry", 
      1 => "Tom"
    ];
 
    $this->assign('nameA',$name);
    $this->assign('allName',$allName);
 
    return $this->fetch('example');
  }
}


HTML

/*index/view/example.html*/
 
<span>{$nameA}</span>
 
{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}
 
 
Result

<br /><span>Jerry</span>
 
<p data-sub="0" data-index="1">Jerry</p>
 
<p data-sub="1" data-index="2">Tom</p>

Das Auf diese Weise schließt ThinkPHP das Parsen der Seite ab, was die Instanziierung, Positionierung, Zuweisung, Darstellung und Verwendung von Tags der Vorlage umfasst.

Instanziierung anzeigen

Noch keine

Vorlagenzuweisung

Offensichtlich kann es nicht gefunden werden, wenn $name direkt in der Vorlage von verwendet wird diese Variable. Vorlagen müssen mithilfe der Zuweisungsmethode Werte zugewiesen werden. Vor dem Ausführen der Rendering-Ausgabefunktion stellt die Zuweisungsmethode eine Zuordnungsbeziehung zwischen den internen Variablen der Funktion und den Vorlagenvariablen her.

$this->assign(&#39;name&#39;,$name);
$this->assign(&#39;allName&#39;,$allName);

Nach der Zuweisung können Sie {$nameA} in der Vorlagendatei verwenden, um die Variable auszugeben.

Vorlagen-Rendering

Wenn die Daten zum Rendern auf der Seite bereit sind, müssen Sie auch die HTML-Datei als Rendering-Vorlage angeben und den Beispielparameter übergeben beim Ausführen der Abrufmethode für die aktuelle Funktion.

return $this->fetch(&#39;example&#39;);

Vorlagen-Tags

Die Verwendung integrierter Tags in Vorlagendateien kann uns dabei helfen, Variablen in der zu schleifen und zu beurteilen Vorlage . Es verwendet ein Paar geschweifte Klammern {tag} {/tag} als öffnendes und schließendes Tag. Dem Tag-Attribut oder -Wert muss unmittelbar zwischen { und } gefolgt werden, und das Vorhandensein von Leerzeichen und Zeilenumbrüchen kann beim Rendern nicht analysiert werden. Das

volist-Tag ist eines der integrierten Tags und wird normalerweise zum Durchlaufen einer Array-Variablen verwendet.

{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}

allName ist eine über die Vorlage zugewiesene Variable. Es kann jetzt direkt in der Vorlage verwendet werden, und das volist-Tag führt eine aus Schleifenoperation darauf.

Einige häufig verwendete Attribute des volist-Tags:


prop name id
key 数组名 当前元素
value allName vo

In volist sind mehrere interne Variablen {$key} {$i} versteckt, Stellen Sie den Array-Index bzw. die Anzahl der Schleifen dar.

Eingebaute Tags

Es gibt viele integrierte Tags, die genauso nützlich sind wie volist:

<notempty name=""></notempty> //判断数据是否不为空 不为空则执行


Verwandte Empfehlungen:

Node.js verwendet JadeTemplate EngineDetaillierte Schritte

Knoten-Frontend-EntwicklungVorlagen-EngineDetaillierte Erläuterung der Jade-Nutzungsschritte

Knoten-Frontend Template EngineJade-Tag Detaillierte Gebrauchsanweisung

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zur Verwendung der ThinkPHP-Vorlagen-Engine. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn