防止gettext翻译

时间:2012-12-08 22:21:51

标签: php gettext

为变量$ status分配字符串值' stop'或者'去' (在php动作中)。

在视图中,我想以这样一种方式显示$ status的值:" stop"显示为红色和"去"绿色。

所以我写了类似的东西:

<span class="<?=$status?>"><?= $status?></span>

和定义的类&#34;停止/去&#34;在我的CSS。一切正常,直到我开始通过在动作中的_()中包装字符串来使其成为多语言。现在gettext不仅翻译实际显示的字符串,还翻译类名(我不想要)。有没有像ungettext这样的东西,所以我可以写:

<span class="<?=ungettext($status)?>"><?= $status?></span>

并获取未翻译的班级名称?

我意识到我可以从动作发送一个bool并在视图中使用if语句来创建我想要的东西。或者(更难看)我可以在css中添加翻译的类名。但是有更优雅的方式吗?

1 个答案:

答案 0 :(得分:3)

我认为你过分思考这个问题。为什么不简单地在动作中创建另一个变量,比如$ status_stye,你不应用翻译?这样你就拥有了你想要的CSS类和文本的翻译版本。