Home

Plates est un moteur de templates PHP inspiré par la philosophie de Twig mais en PHP natif, non compilé.

Plates est un moteur de templates PHP inspiré par la philosophie de Twig mais en PHP natif, non compilé.

Si vous utilisez Symfony2, vous connaissez forcément Twig ! Plates est un moteur de templates PHP qui s’inspire du meilleur de Twig et essaye d’apporter des fonctionnalités et architecture moderne dans un système de templates PHP natif.

En effet, contrairement à Smarty ou Twig, Plates utilise la syntaxe PHP native pour coder les templates.

On retrouve une architecture avec de l’héritage de templates et des layouts.

Tous les templates sont namespacés à l’aide de leurs répertoires, et suffisamment bien découpés pour qu’ils puissent être testés unitairement.

Voici un exemple d’utilisation côté contrôleur:

01.<?php
02.// Create a new template
03.$template = new LeaguePlatesTemplate($engine);
04.// Assign a variable to the template
05.$template->name = 'Jonathan';
06.// Render the template
07.echo $template->render('home');
08.// Render a folder template
09.$email = $template->render('emails::welcome');

On retrouve le même système de layout / blocks que dans Twig, exemple de layout:

01.<!DOCTYPE html>
02.<html lang="en">
03.<head>
04.<meta charset="utf-8">
05.<title><?=$this->title?></title>
06.</head>
07.<body>
08.<div id="content">
09.<?=$this->content?>
10.</div>
11.<?php if (isset($this->sidebar)): ?>
12.<div id="sidebar">
13.<?=$this->sidebar?>
14.</div>
15.<?php endif ?>
16.</body>
17.</html>

Et voici comment développer un template qui viendra utiliser notre layout:

01.<?php $this->layout('template') ?>
02.<?php $this->title = 'User Profile' ?>
03.<?php $this->start('content') ?>
04.<h1>Welcome!</h1>
05.<p>Hello <?=$this->e($this->name)?></p>
06.<?php $this->end() ?>
07.<?php $this->start('sidebar') ?>
08.<ul>
09.<li><a href="/link">Example Link</a></li>
10.<li><a href="/link">Example Link</a></li>
11.<li><a href="/link">Example Link</a></li>
12.<li><a href="/link">Example Link</a></li>
13.<li><a href="/link">Example Link</a></li>
14.</ul>
15.<?php $this->end() ?>

En gros, Plates propose une alternative à Twig pour ceux qui préfèrent développer en PHP natif plutôt que d’utiliser une syntaxe de template spécifique.

Qu’en pensez-vous ?

Site Officiel

Publicités

Laisser un commentaire

Choisissez une méthode de connexion pour poster votre commentaire:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s