0

文档:http ://www.smarty.net/docsv2/en/language.modifier.replace.tpl

我不想替换单个值,而是想更改多个值。在文档中它说 str_replace 与 php 的 str_replace 相同。那么我将如何明智地执行以下智能操作?

$letters = array('a', 'p');
$fruit   = array('apple', 'pear');
$text    = 'a p';
$output  = str_replace($letters, $fruit, $text);
4

1 回答 1

8

smarty 中的等价物是:

{assign "letters" array('a', 'p')}
{assign "fruit" array('apple', 'pear')}
{assign "text" 'a p'}
{$text|replace:$letters:$fruit}

它提供与您的 php 相同的输出:

apearpearle pear

但请注意,“模板中的变量赋值本质上是将应用程序逻辑放入可能在 PHP 中更好处理的演示文稿中”(取自http://www.smarty.net/docs/en/language.function.assign .tpl )

于 2013-10-01T15:52:33.850 回答