smarty fetch string replace

时间:2013-03-20 00:48:48

标签: php smarty

使用$ smarty-> fetch时,它会将模板拉入变量。有没有办法对该变量进行预先解析的字符串操作?

示例:

PHP:

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

template.tpl

{include file='incl.tpl'}

理想的结果是让模板成为:

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

1 个答案:

答案 0 :(得分:2)

您必须先修改模板。然后你可以使用fetch。

这样的事情:

$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