Samstag, 11. Februar 2012 |
| |
Smarty ist beileibe nicht die einzige Template Engine, auf die Webentwickler zurückgreifen können, sicherlich aber (PHP selbst einmal ausgenommen) eine der am weitesten verbreiteten. Eine Mögliche Alternative hat jetzt Sameer Borate für sich entdeckt und stellt uns mit Haml ein aus der Ruby-Ecke stammendes Template-System vor (bzw. dessen PHP-Ports PHamlP und phpHaml).
Um das Ganze kurz zu veranschaulichen - Ziel ist es aus ...
.
.
<div id="content">
<table class="config list">
<tr><th>ID</th><th>Name</th><th>Value</th></tr>
<?php foreach ($config as $c) { ?>
<tr class="<?php echo ($class = forClassName($c)); ?>"
id="<?php echo "$class_{$c->ID}"; ?>">
<td><?php echo $c->ID; ?></td>
<td><?php echo $c->name; ?></td>
<td><?php echo $c->value; ?></td>
</tr>
<?php } ?>
</table>
</div>
.
.... folgendes zu machen:
#content
%table.config.list
%tr
%th ID
%th Name
%th Value
- foreach ($config as $c)
%tr[$c]
%td= $c->ID
%td= $c->name
%td= $c->valueÜber zwei Nachteile ist Sameer während seiner Evaluation jedoch gestolpert. Zum einen legt Haml großen Wert auf korrekt eingerückten Code und zum anderen lässt sich das Markup derzeit nicht auf mehrere Dateien verteilen. Wer damit leben kann (oder einen passenden Workaround findet) kann aber beruhigt einen Blick auf das Haml-Template-System werfen.