Ich denke, das die Arbeit für Vorlage Motor - aber mach dir keine Sorgen, ist ziemlich einfach zu bedienen.
Das einzige, was Sie brauchen, ist vorbereitet Projekt mit composer und danach einfach eine der Vorlage-Engine zu installieren (für dieses Beispiel habe ich Latté abgeholt).
Installieren des Komponisten:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
nach dieser Installation Latté:
php composer.phar require latte/latte
Und am Ende können Sie so etwas wie dies erstellen:
$latte = new \Latte\Engine;
$latte->setTempDirectory('/path/to/tempdir');
$parameters['val'] = 2;
$html = $latte->renderToString('template.latte', $parameters);
und diese Inhalte setzen in die Datei "template.latte" im selben Verzeichnis:
<select>
{foreach [1, 2, 3] as $key}
<option {if $val === $key}>Option {$key}</option>
{/foreach}
</select>
Diese Lösung wird von Fachleuten aus vielen Gründen verwendet:
- Put-Logik und Rendering nebeneinander, nicht gemischt Dinge.
- Alle Variablen werden entkam automatisch
- DRY (XSS zu vermeiden) (Do not Repeat Yourself) principe, sollte diese Zeile mit der Option nur einmal
Sie
BTW immer verwenden sollten in Bedingung triple equals geschrieben werden PHP (vergleicht auch den Typ der Variablen). Es ist viel sicherer und Sie können mit diesem Prinzip viel Zeit für das Debuggen sparen :-).
Sie können Code in heredoc Literalen nicht schreiben. Sie müssen den Ergebnisstring iterativ zusammenstellen. Also einfach nach dem Zustand suchen und verketten. – zerkms