如何使 gettext 始终使用翻译而不是默认语言文本

发布于 2024-08-05 00:53:26 字数 426 浏览 6 评论 0原文

当您调用 gettext php 函数将文本翻译为另一种语言时,它会使用页面上的文本作为 KEY/ID 来查找值,并将其替换为

echo gettext('hello how are you today');

用于查找翻译的文本,但是我想使用类似的东西

echo gettext('welcome_message');

并将其翻译成英语和我提供的任何其他语言。那么我怎样才能做到这一点呢?如何使 gettext 函数始终使用语言文件? 如果我的网站的默认语言是英语,那么 gettext 不会向英语用户显示 welcome_message,而是会显示 你好,今天怎么样

因此, 除了其他语言文件之外还有英文语言文件吗?

When you call the gettext php function for translating text to another language, it uses the text you have on the page to act as the KEY/ID to lookup the value to replace it with

echo gettext('hello how are you today');

that would be the text used to lookup the translation, however I would like to use something like this

echo gettext('welcome_message');

and have that translated into English and any other language I offer. So how could I make this happen? How can I make gettext function ALWAYS use a language file? So if my default language is English for the site then instead of gettext showing welcome_message to an English user it would show hello how are you today

Is it as simple as just creating an English language file in addition to the other language files?

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

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

发布评论

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

评论(1

爱你不解释 2024-08-12 00:53:26

你走在正确的轨道上。 gettext() 的字符串参数只是一个标识符,而不是“默认语言”。如果活动语言环境中没有翻译,则 gettext 将返回该标识符。

您的解决方案正是您所怀疑的:只需创建一个英文翻译文件。

You're on the right track. The string argument to gettext() is just an identifier, not a "default language". If there is no translation in the active locale, then gettext will return that identifier.

Your solution is just what you suspect: just create an English translation file.

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