Smarty - 调用函数并呈现响应

Smarty - call a function and render the response

在当前网站上,我正在尝试执行一个来自变量的函数。

我当前的代码片段:

<textarea rows="10" name="{$field.name}" class="form-control">{$field.placeholder}</textarea>

那么,占位符变量里面是什么?

{$plugin->getMessage()}

我的文本区域中的内容当前使用此设置:

{$plugin->getMessage()}

但目标是,smarty 执行函数并使用函数中的 returns 内容。所以我尝试使用一些过滤器。

我的浏览器中的响应是(文本区域内的值):

{{$plugin->getMessage()}}

我浏览器中的响应(文本区域内的值):

{$field.placeholder}

但是我应该使用什么来获得函数的响应 "$plugin->getMessage()"

编辑: 对于也有同样问题的其他人:使用 {eval var=$foo}

http://www.smarty.net/docs/en/language.function.eval.tpl

我认为您可能对 smarty 的工作原理感到困惑。似乎您只是将字符串“{$plugin->getMessage()}”分配给变量 $field.placeholder,并期望 smarty 以某种方式评估它。但它没有,所以这就是它显示字符串的原因。

要使其正常工作,您应该在 php 脚本中将该函数的结果分配给一个变量