twig render function

This commit is contained in:
2024-10-24 17:44:47 +02:00
parent e7ef57817a
commit e2b3062a22
6 changed files with 23 additions and 30 deletions

View File

@@ -1,12 +0,0 @@
<?php
/* inclure l'autoloader */
require_once('../vendor/autoload.php');
/* templates chargés à partir du système de fichiers (répertoire vue) */
$loader = new Twig\Loader\FilesystemLoader('../templates');
/* options : prod = cache dans le répertoire cache, dev = pas de cache */
$options_prod = array('cache' => 'cache', 'autoescape' => true);
$options_dev = array('cache' => false, 'autoescape' => true);
/* stocker la configuration */
$twig = new Twig\Environment($loader);
/* charger+compiler le template, exécuter, envoyer le résultat au navigateur */
echo $twig->render($vue, $donnees);

View File

@@ -1,6 +1,7 @@
<?php
require_once('../src/User.php');
require_once('../src/Twig.php');
if (isset($_POST)) {
if (
@@ -23,7 +24,4 @@ if (isset($_POST)) {
}
}
$vue = "users/add.twig";
$donnees = array();
require_once('../modele/twig.php');
renderTwig("users/add.twig", array());

View File

@@ -2,6 +2,7 @@
session_start();
require_once('../src/User.php');
require_once('../src/Twig.php');
if (isset($_GET['id']) && !empty($_GET['id'])) {
$id = strip_tags($_GET['id']);
@@ -13,8 +14,4 @@ if (isset($_GET['id']) && !empty($_GET['id'])) {
header('Location: index.php');
}
$vue = "users/details.twig";
$donnees = array("user" => $user);
require_once('../modele/twig.php');
renderTwig("users/details.twig", array("user" => $user));

View File

@@ -1,6 +1,7 @@
<?php
require_once('../src/User.php');
require_once('../src/Twig.php');
if (isset($_POST)) {
if (
@@ -28,7 +29,4 @@ if (isset($_GET['id']) && !empty($_GET['id'])) {
$user = GetUser($id);
}
$vue = "users/edit.twig";
$donnees = array("user" => $user);
require_once('../modele/twig.php');
renderTwig("users/edit.twig", array("user" => $user));

View File

@@ -1,9 +1,6 @@
<?php
// On inclut la connexion à la base
require_once('../src/User.php');
require_once('../src/Twig.php');
$vue = "users/index.twig";
$donnees = array("users" => GetUsers());
require_once('../modele/twig.php');
renderTwig("users/index.twig", array("users" => GetUsers()));

15
tpCrudTwig/src/Twig.php Normal file
View File

@@ -0,0 +1,15 @@
<?php
/* inclure l'autoloader */
require_once('../vendor/autoload.php');
function renderTwig(string $file, $donnees) {
/* templates chargés à partir du système de fichiers (répertoire vue) */
$loader = new Twig\Loader\FilesystemLoader('../templates');
/* options : prod = cache dans le répertoire cache, dev = pas de cache */
$options_prod = array('cache' => 'cache', 'autoescape' => true);
$options_dev = array('cache' => false, 'autoescape' => true);
/* stocker la configuration */
$twig = new Twig\Environment($loader);
/* charger+compiler le template, exécuter, envoyer le résultat au navigateur */
echo $twig->render($file, $donnees);
}