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
- Definition 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.
- Klassifizierung von Template-Engines
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.
- Vorteile der Template-Engine
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
- Erstellung von Vorlagendateien
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.
- Vorlagendateien schreiben
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>編號(hào)</th>
<th>用戶名</th>
<th>郵箱</th>
<th>注冊(cè)時(shí)間</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.
- Zuweisung und Verwendung von Vorlagenvariablen
In ThinkPHP6 k?nnen wir die Zuweisungsmethode im Controller verwenden, um Variablen für die Vorlagendatei festzulegen.
Zum Beispiel:
public function index()
{
// 獲取用戶數(shù)據(jù)
$users = Db::name('user')->select();
// 設(shè)置模板變量
$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.
- Implementierung des Vorlagenlayouts
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>編號(hào)</th>
<th>用戶名</th>
<th>郵箱</th>
<th>注冊(cè)時(shí)間</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!