将 smarty 默认变量修饰符与 gettext 一起使用

发布于 2024-07-19 18:02:29 字数 314 浏览 6 评论 0原文

我目前正在使用 smarty 与 zend 框架,并且我已设置 smarty 以按以下方式使用 gettext:

{gettext text="resource-identifier"}

这工作正常,但在尝试将其与 smarty 默认变量处理程序一起使用时遇到问题。 我想这样做:

{$somevar|default:gettext text="resource-identifier"}

但这只打印“gettext”。 关于我如何做到这一点的任何建议。 有可能吗?

I'm currently using smarty with zend framework, and I have set up smarty to use gettext in the following manner:

{gettext text="resource-identifier"}

This works properly, but I got a problem when trying to use this with the smarty default variable handler. I want to do this:

{$somevar|default:gettext text="resource-identifier"}

But this only prints 'gettext'. Any suggestions to how I can do this. Is it even possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凉城凉梦凉人心 2024-07-26 18:02:29

对于聪明人来说,链接函数的结果是不可能的。 您需要查看 gettext 是否可以将其结果分配给变量(分配 = varname 参数),或者编写自己的结果(此时只需编写一个新的修饰符,如 default_gettext:'resource-id'

)假设分配,它看起来像:

{gettext text="resource-id" assign="myvar"}
{$somevar|default:$myvar}

在 new 修饰符中,它看起来像:

{$somevar|default_gettext:"resource-id"}

For smarty, chaining a result of a function isn't possible like that. You'll need to see if gettext can assign its result to a variable (an assign=varname param), or write your own (and at that point just write a new modifier that is like default_gettext:'resource-id')

in the assumed assign, it'd look like:

{gettext text="resource-id" assign="myvar"}
{$somevar|default:$myvar}

In the new modifier it'd look like:

{$somevar|default_gettext:"resource-id"}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文