No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
tests
.gitignore
LICENSE
README.md
composer.json
phpunit.xml

README.md

Template bridge

Template bridge between your legacy php code and newer template engines.

Dependencies

Requires minimum of PHP 7.0. Also uses srcoder/normalize-strings for string manipulation.

Engines

  • Plain
  • Twig
  • Compatible

Basic usage

Use the manager to define your templates.

use \Srcoder\TemplateBridge\Manager;
use \Srcoder\TemplateBridge\Engine\Twig;
use \Srcoder\TemplateBridge\Engine\Plain;

// Initialize template bridge
$templateBridge = new Manager;
// or static
$templateBridge = Manager::instance();

// Add a engine
$templateBridge->add(
        'twig',         // Name
        new Twig(),     // Template engine
        300             // Prio, higher is more important
);

$templateBridge->add(
        'plain',        // Name
        new Plain(),    // Template engine
        600             // Prio, higher is more important
);


// Adding a file
$templateManager->addFile('file');
// Will search for file.twig and file

// Render template
echo $templateBridge->render();

Data

When rendering something you can add data to it.

use \Srcoder\TemplateBridge\Data;

echo $templateBridge->render(new Data(['key' => 'value']))

Fun part

Twig engine

When a Twig file is found it will work exactly as you expect.

Plain engine

Plain files will replace {{$variable}} from the Data object Plain engine can also be used for javascript and html

Compatible engine