2013-03-20 4 views
1

Lorsque vous utilisez $ smarty-> fetch, le modèle est déplacé dans une variable. Est-il possible de faire une manipulation de chaîne pré-analysée sur cette variable?Chaîne smarty fetch Remplacer

Exemple:

PHP:

$variable = $smarty->fetch('template.tpl'); 
$variable = str_replace("{include file='../another_dir", "{include file='", $variable); 

template.tpl

{include file='incl.tpl'} 

résultat idéal serait d'avoir le modèle devenu:

{include file='../another_dir/incl.tpl'} 

Répondre

2

Vous devez modifier modèle premier. Ensuite, vous pouvez utiliser chercher.

Quelque chose comme ceci:

$template = file_get_contents('template.tpl'); 
$template = str_replace("{include file='../another_dir", "{include file='", $template); 
$variable = $smarty->fetch('string:' . $template); 

Smarty String Template Resources.