Documentations

Transfert de données Twig

Dans votre contrôleur, lorsque vous appelez le moteur de rendu twig (avec la fonction $this->twig->render), il est possible d'envoyer des données aux vues qui peuvent être utilisées comme variables.

Voici un exemple que nous pourrons expliquer en détail.

$itemManager = new ItemManager();
$items = $itemManager->selectAll();

return $this->twig->render('Item/index.html.twig', [
  'items' => $items,
]);

Dans ce morceau de code (tiré de la méthode index de itemController.php), après avoir appelé le gestionnaire de tables et la méthode selectAll, les résultats sont stockés dans la variable $items.

Ensuite, le twig->render créera une vue à partir du fichier (dans le dossier view) Item/index.html.twig.

Dans ce fichier, la variable item sera disponible pour être affichée (pour autant qu'il s'agisse d'une chaîne de caractères ou d'un nombre).

Il est possible d'envoyer autant de variables que l'on veut, comme chaque élément du tableau passé en paramètre, la clé est le nom de la variable disponible dans twig.

return $this->twig->render('Item/index.html.twig', [
  'items' => $items,
  'theFirstItem' => $items[0],
  'nameOfSomething' = "the name of something",
]);

Pour connaître le contenu d'une variable, lorsque le site n'est pas en production (par défaut) il est possible d'afficher un équivalent de var_dump() dans la vue avec la fonction dump().

{{ dump(theFirstItem) }}