Heim  >  Artikel  >  Backend-Entwicklung  >  Erstellen Sie ein PHP-Framework und eine Template-Engine

Erstellen Sie ein PHP-Framework und eine Template-Engine

高洛峰
高洛峰Original
2016-10-31 14:32:251010Durchsuche

Tatsächlich gibt es im Internet viele Debatten darüber, ob PHP Template-Engines verwenden sollte. Hier sind einige Vorteile der Verwendung von Template-Engines.

Sicher, z. B. Standard-Escape-Ausgabe

Gute Lesbarkeit

Weitere Informationen zu verwandten Inhalten finden Sie in Zhihus Diskussion

Wie aussagekräftig ist die PHP-Template-Engine? ?

Warum macht ThinkPHP etwas Ähnliches wie eine Template-Engine in PHP? Auch Smarty? Wofür werden diese verwendet?

Bestimmen wir zunächst die Idee, welche Schreibmethode in der Vorlage verwendet werden soll, und definieren wir die folgenden einfachen Schreibmethoden.

Variablenwert ausgeben

{{ }} Der Rückgabewert des Ausdrucks wird automatisch an die PHP-Funktion „htmlentities“ zur Verarbeitung übergeben, um XSS-Angriffe zu verhindern.

Hello, {{ $name }}!

Gibt den Variablenwert ohne Escapezeichen aus

Hello, {!! $name !!}!

If-Ausdruck

If kann mit den Anweisungen @if, @elseif, @else und @endif erstellt werden .

@if (count($records) === 1)
    I have one record!@elseif (count($records) > 1)
    I have multiple records!@else
    I don't have any records!@endif

Schleife

@for ($i = 0; $i < 10; $i++)
    The current value is {{ $i }}@endfor@foreach ($users as $user)
    <p>This is user {{ $user->id }}</p>@endforeach@while (true)
    <p>I&#39;m looping forever.</p>@endwhile

Andere Ansichten vorstellen

@include(&#39;view.name&#39;, [&#39;some&#39; => &#39;data&#39;])

Im Moment reicht es im Grunde aus, so viele zu definieren. Wenn Sie besondere Bedürfnisse haben, können Sie diese selbst hinzufügen. Die Prinzipien sind im Grunde die gleichen. Wenn Sie einen schreiben können, können Sie auch die anderen schreiben.

Dann überlegen Sie, wie Sie damit umgehen sollen. Wir haben eine Schreibweise definiert, die PHP nicht erkennen kann. Wir müssen sie in etwas umwandeln, das PHP erkennen kann.

Wenn wir im einfachsten Beispiel einen Inhalt wie {{ $name }} erhalten, müssen wir ihn nur in umwandeln, damit wir ihn identifizieren und den entsprechenden Variablenwert ausgeben können.


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