Comment charger un modèle à partir d'un chemin d'accès complet dans le moteur de template TWIG
Je me demandais comment faire pour charger un modèle à partir de son chemin d'accès complet (comme FICHIER constante donner).
En fait, vous devez définir un "root" pour le modèle comme ceci :
require_once '/path/to/lib/Twig/Autoloader.php';
Twig_Autoloader::register();
$loader = new Twig_Loader_Filesystem('/path/to/templates');
$twig = new Twig_Environment($loader, array(
'cache' => '/path/to/compilation_cache',
));
Et puis :
$template = $twig->loadTemplate('index.html');
echo $template->render(array('the' => 'variables', 'go' => 'here'));
Je tiens à appeler l'loadTemplate méthode avec un chemin d'accès complet et pas juste le nom du fichier.
Comment puis-je faire ?
Je ne veux pas créer mon propre chargeur pour une telle chose..
Grâce
Vous avez essayé de jQuery?
OriginalL'auteur Leto | 2011-08-15
Vous devez vous connecter pour publier un commentaire.
Viens de le faire:
De sorte que ->loadTemplate() permet de charger des modèles relativement à
/
.Ou si vous voulez être en mesure de charger des modèles à la fois relative et absolue path:
essayez
$loader = new Twig_Loader_Filesystem('J:/');
Ne fonctionne pas 🙁 Le chargeur de faire : "if (is_file($chemin.'/'.$nom)) {.." Donc j'ai besoin de quelque chose comme "if (is_file($nom)) {.."
Si
$path
est à la racine de votre système de fichiers, puis$path . '/' . $name
==$name
(je suppose que même sur windows,"J:/" . "/some/file"
est le même que"J:/some/file"
. Ensemble$path
pour tout ce qui est à la racine de votre système de fichiers de votre système d'exploitation.Oui ce serait le travail, mais si je bouge, puis il se plante encore une fois.. j'ai décidé de créer un nouveau chargeur.. je poste ci-dessous. Merci
OriginalL'auteur Arnaud Le Blanc
Ici est un chargeur qui charge une absolue (ou pas) chemin d'accès donné :
OriginalL'auteur Leto
Étendre le chargeur de mieux que de modifier la bibliothèque:
OriginalL'auteur Wiliam