Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
Gnieark 119485f334 test travis 6 år sedan
sample addSubBlocsDefinitions 6 år sedan
test addSubBlocsDefinitions 6 år sedan
.gitignore gitignore 6 år sedan
.travis.yml test travis 6 år sedan
Makefile Source code now conforms to PSR-2 6 år sedan
README.md improve Readme 6 år sedan
TplBlock.php hhvm 6 år sedan
autoload.php Trying with a custom autoload.php 6 år sedan
composer.json Trying with PHPUnit v5.7 6 år sedan
composer.lock permit fun with spaces 6 år sedan
phpcs.xml Source code now conforms to PSR-2 6 år sedan
phpmd.xml Source code now conforms to PSR-2 6 år sedan

README.md

tplBlock

A very simple PHP template class

Build Status

Sample

This simple template file:

<html>
<body>
    <h1>{{pageTilte}}</h1>
    <ul>
    <!-- BEGIN templatesystem -->
        <li><a href="{{templatesystem.url}}"> {{templatesystem.name}}</a>
         by {{templatesystem.author}} is {{templatesystem.quality}}</li> 
    <!-- END templatesystem -->
    </ul>

</body>
</html>

Parsed with this code:

<?php
require_once ("path/TplBlock.php");

//init object
$tpl = new TplBlock();
//add a var
$tpl->add_vars(array("pageTilte" => "Poke @zigazou ;)"));


$data = array(
    array(
        "url"       => "https://github.com/gnieark/tplBlock",
        "name"      => "tplBlock",
        "author"    => "Gnieark",
        "quality"   => "simple and perfect"
    ),
    array(
        "url"       => "https://github.com/Zigazou/TemplateEngine",
        "name"      =>  "TemplateEngine",
        "author"    => "Zigazou",
        "quality"   => "more complex than tplBlock"

    )
);

//add blocks
foreach ($data as $block){
    $tplTemplateSystem = new TplBlock("templatesystem");
    $tplTemplateSystem -> add_vars($block);
    $tpl->add_sub_block($tplTemplateSystem);
}

//parsing:
echo $tpl->apply_tpl_file("template.html");

will return:

<html>
<body>
    <h1>Poke @zigazou ;)</h1>
    <ul>
            <li><a href="https://github.com/gnieark/tplBlock"> tplBlock</a>
         by Gnieark is simple and perfect</li> 
            <li><a href="https://github.com/Zigazou/TemplateEngine"> TemplateEngine</a>
         by Zigazou is more complex than tplBlock</li> 
    
    </ul>

</body>
</html>

Conception choices

I wrote this class for use it on others personnals projects. It's really simple. I think logicals functions "OR" "IF", filtering, caching, are not the templating system matter.

If a block ( <--BEGIN .... )is in the template, but is not called, it will be deleted.

For now, class is permissive. I'll improve it to manage templating errors.

Install

Use composer etc... or simply put the file TplBlock.php on your project https://raw.githubusercontent.com/gnieark/tplBlock/master/TplBlock.php

Documentation

See the comments on the TplBlock.php file.