In ThinkPHP6 ist die Template-Engine ein sehr wichtiger Teil, sie kann uns dabei helfen, Ansichten effizienter zu rendern und Daten anzuzeigen. In diesem Artikel wird die Bedienung der Template-Engine in ThinkPHP6 vorgestellt.
1. Grundkenntnisse der Template-Engine
Eine Template-Engine ist ein Tool, das Daten in HTML konvertiert. Seine Hauptfunktion besteht darin, Ansichten und Geschäftslogik zu trennen. Normalerweise verarbeiten wir Daten und Ansichten getrennt, kombinieren die beiden dann über eine Template-Engine und präsentieren sie schließlich dem Benutzer.
In ThinkPHP6 werden Template-Engines hauptsächlich in zwei Typen unterteilt: Eine ist eine auf PHP basierende Template-Engine (wie Smarty, Blade usw.) und die andere ist eine auf PHP basierende Template-Engine native Syntax.
Die Template-Engine kann uns dabei helfen, Ansichten und Geschäftslogik zu trennen, die Wartbarkeit und Lesbarkeit des Codes zu verbessern, den Seitenlayoutstil schnell zu ändern und die Entwicklungseffizienz zu verbessern.
2. Betrieb der Vorlagen-Engine in ThinkPHP6
In ThinkPHP6 können wir schnell eine Vorlagendatei mit dem folgenden Befehl erstellen:
php think make:view Index/index
wobei Index den Namen des Controllers und Index den Namen der Methode darstellt. Nach der Ausführung dieses Befehls wird automatisch ein Indexverzeichnis im Anwendungsverzeichnis generiert und in diesem Verzeichnis eine index.html-Datei erstellt.
Nachdem wir die Vorlagendatei erstellt haben, können wir HTML, CSS, JavaScript und andere Codes entsprechend unseren Anforderungen schreiben. In der Vorlagendatei können Daten auch über die Syntax der Template-Engine eingebettet werden.
Zum Beispiel:
<html> <head> <title>用户列表</title> </head> <body> <table> <thead> <tr> <th>编号</th> <th>用户名</th> <th>邮箱</th> <th>注册时间</th> </tr> </thead> <tbody> <?php foreach($users as $user): ?> <tr> <td><?php echo $user['id']; ?></td> <td><?php echo $user['username']; ?></td> <td><?php echo $user['email']; ?></td> <td><?php echo $user['create_time']; ?></td> </tr> <?php endforeach; ?> </tbody> </table> </body> </html>
Im obigen Code verwenden wir die foreach-Schleifenanweisung von PHP, um die Benutzerlistendaten zu durchlaufen und die Daten in die HTML-Seite zu rendern.
In ThinkPHP6 können wir die Zuweisungsmethode im Controller verwenden, um Variablen für die Vorlagendatei festzulegen.
Zum Beispiel:
public function index() { // 获取用户数据 $users = Db::name('user')->select(); // 设置模板变量 $this->assign('users', $users); // 渲染模板输出 return $this->view->fetch(); }
Im obigen Code erhalten wir zuerst die Benutzerdaten über die Methode Db::name('user')->select() und legen die Daten dann über die Methode $this-> fest. Methode „assign()“ in Vorlagenvariablen einfügen. Schließlich wird die Vorlagendatei über die Methode return $this->view->fetch() in eine HTML-Seite gerendert und an den Browser ausgegeben.
In der Vorlagendatei können Sie den angegebenen Variablenwert über die Syntax {{$Variablenname}} abrufen.
Zum Beispiel:
@foreach($users as $user) <tr> <td>{{$user['id']}}</td> <td>{{$user['username']}}</td> <td>{{$user['email']}}</td> <td>{{$user['create_time']}}</td> </tr> @endforeach
Im obigen Code verwenden wir die {{$}}-Syntax, um den entsprechenden Wert in den Benutzerdaten abzurufen und ihn auf der HTML-Seite anzuzeigen.
In der tatsächlichen Entwicklung extrahieren wir normalerweise den allgemeinen Code (wie Kopfzeile, Ende, Seitenleiste usw.) in allen Seitenlayouts zur Wiederverwendung auf anderen Seiten.
In ThinkPHP6 können wir diese Funktion mithilfe des Vorlagenlayouts implementieren. Die spezifischen Vorgänge sind wie folgt:
1) Erstellen Sie ein Layoutverzeichnis im Anwendungsverzeichnis und erstellen Sie in diesem Verzeichnis eine base.html-Datei.
2) Legen Sie das Seitenlayout in der Datei base.html fest, z. B. Header, Tail und andere gängige Codes.
Zum Beispiel:
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>{{$title}}</title> </head> <body> <header> <!-- 头部代码 --> </header> <main> <!-- 主体代码 --> </main> <footer> <!-- 底部代码 --> </footer> </body> </html>
Im obigen Code legen wir das Grundlayout der HTML-Seite fest und verwenden die {{$}}-Syntax, um den Variablenwert zu erhalten.
3) Verwenden Sie Erweiterungen und Abschnittssyntax in anderen Vorlagendateien, um öffentliche Layoutdateien zu erben und zu verwenden.
Zum Beispiel:
@extends('layout/base') @section('content') <table> <thead> <tr> <th>编号</th> <th>用户名</th> <th>邮箱</th> <th>注册时间</th> </tr> </thead> <tbody> @foreach($users as $user) <tr> <td>{{$user['id']}}</td> <td>{{$user['username']}}</td> <td>{{$user['email']}}</td> <td>{{$user['create_time']}}</td> </tr> @endforeach </tbody> </table> @endsection
Im obigen Code verwenden wir zunächst die @extends-Syntax, um die öffentliche Layoutdatei zu erben, und verwenden dann die @section- und @endsection-Syntax, um den Vorlageninhalt zu ersetzen und zu erweitern.
Fazit
Durch die Einleitung dieses Artikels sollten die Leser verstanden haben, wie die Template-Engine in ThinkPHP6 bedient wird, einschließlich der Erstellung von Template-Dateien, der Zuweisung und Verwendung von Template-Variablen, der Implementierung des Template-Layouts usw. Die Template-Engine ist eine wichtige Technologie in der Webentwicklung. Die Beherrschung dieser Technologie kann die Entwicklungseffizienz und die Wartbarkeit des Codes verbessern.
Das obige ist der detaillierte Inhalt vonWie betreibe ich die Template-Engine in ThinkPHP6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!