Heim > PHP-Framework > Denken Sie an PHP > Wie betreibe ich die Template-Engine in ThinkPHP6?

Wie betreibe ich die Template-Engine in ThinkPHP6?

WBOY
Freigeben: 2023-06-12 09:21:09
Original
1508 Leute haben es durchsucht

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

  1. 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.

  1. 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.

  1. 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

  1. Erstellung von Vorlagendateien

In ThinkPHP6 können wir schnell eine Vorlagendatei mit dem folgenden Befehl erstellen:

php think make:view Index/index
Nach dem Login kopieren

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.

  1. 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>编号</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>
Nach dem Login kopieren

Im obigen Code verwenden wir die foreach-Schleifenanweisung von PHP, um die Benutzerlistendaten zu durchlaufen und die Daten in die HTML-Seite zu rendern.

  1. 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()
{
    // 获取用户数据
    $users = Db::name('user')->select();

    // 设置模板变量
    $this->assign('users', $users);

    // 渲染模板输出
    return $this->view->fetch();
}
Nach dem Login kopieren

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
Nach dem Login kopieren

Im obigen Code verwenden wir die {{$}}-Syntax, um den entsprechenden Wert in den Benutzerdaten abzurufen und ihn auf der HTML-Seite anzuzeigen.

  1. 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>
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage