Go to file
bzick a3c5128aba Fixes
Update docs
  Add {import ... from ...}
  Improve parsing
2013-03-14 21:45:00 +04:00
benchmark Fixes 2013-03-14 21:45:00 +04:00
docs Fixes 2013-03-14 21:45:00 +04:00
src Fixes 2013-03-14 21:45:00 +04:00
tests Fixes 2013-03-14 21:45:00 +04:00
.gitignore Hold folders 2013-02-20 18:01:21 +04:00
.travis.yml Add composer to travis 2013-02-07 18:01:06 +04:00
composer.json Update composer.json 2013-02-22 09:42:49 +04:00
phpunit.xml.dist port 2013-01-25 18:36:16 +04:00
README.md Update README.md 2013-03-12 22:36:35 +04:00

Aspect - awesome template engine for PHP

Composer package: {"bzick/aspect": "dev-master"}. See on Packagist.org

Build Status

About :: Documentation :: Benchmark :: Articles

Simple template

<html>
    <head>
        <title>Aspect</title>
    </head>
    <body>
    {if $templaters.aspect?}
        {var $tpl = $templaters.aspect}
        <div>Name: {$tpl.name}</div>
        <div>Description: {$tpl.name|truncate:80}</div>
        <ul>
        {foreach $tpl.features as $feature}
            <li>{$feature.name} (from {$feature.timestamp|gmdate:"Y-m-d H:i:s"})</li>
        {/foreach}
        </ul>
    {/if}
    </body>
</html>

Display template

<?php
$aspect = Aspect::factory('./templates', './compiled', Aspect::CHECK_MTIME);
$aspect->display("pages/about.tpl", $data);

Get content

<?php
$aspect = Aspect::factory('./templates', './compiled', Aspect::CHECK_MTIME);
$content = $aspect->fetch("pages/about.tpl", $data);

Runtime compilation

<?php
$aspect = new Aspect();
$tempate = $aspect->compileCode('Hello {$user.name}! {if $user.email?} Your email: {$user.email} {/if}');
$tempate->display($data);
// or
$content = $tempate->fetch($data);