Go to file
2013-07-02 11:07:33 +04:00
benchmark Add checking nested level for {use} and {extends} 2013-07-02 11:07:33 +04:00
docs Add checking nested level for {use} and {extends} 2013-07-02 11:07:33 +04:00
src Add checking nested level for {use} and {extends} 2013-07-02 11:07:33 +04:00
tests Rename Cytro to Fenom 2013-06-28 11:53:53 +04:00
.gitignore Fix: comments parsing 2013-05-30 23:23:22 +04:00
.travis.yml Remove PHP 5.2 from travis.yml 2013-03-15 01:28:39 +04:00
authors.md Add licenses 2013-04-28 18:08:57 +04:00
CHANGELOG.md Upd changelog 2013-06-20 11:11:37 +04:00
composer.json Add checking nested level for {use} and {extends} 2013-07-02 11:07:33 +04:00
license.md Add licenses 2013-04-28 18:08:57 +04:00
phpunit.xml.dist Fix: comments parsing 2013-05-30 23:23:22 +04:00
README.md Add checking nested level for {use} and {extends} 2013-07-02 11:07:33 +04:00

Fenom - Template Engine for PHP

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

Build Status

Usage :: Documentation :: Benchmark :: Articles

Simple template

<html>
    <head>
        <title>Fenom</title>
    </head>
    <body>
    {if $templaters.fenom?}
        {var $tpl = $templaters.fenom}
        <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
$fenom = Fenom::factory('./templates', './compiled', Fenom::AUTO_RELOAD);
$fenom->display("pages/about.tpl", $data);

Get content

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

Runtime compilation

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