gpt4 book ai didi

translation - 如何在没有文本域的情况下使用 Zf2 翻译?

转载 作者:行者123 更新时间:2023-12-04 05:29:39 27 4
gpt4 key购买 nike

我的模块适用于

'translator' => array(  'locale' => 'de_DE',
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language',
'pattern' => '%s.mo',

只有当我使用像 DE.mo EN.mo 这样的 MO 文件但当文件是 en_US.mo 时,de_DE.mo 我需要添加到 congik 'text_domain' => __NAMESPACE__ , 在我看来 $this->translate('some message',__NAMESPACE__)我怎样才能摆脱这种差异?

最佳答案

可以使用文本域,但它们不是强制性的。所以:

'translator' => array('locale' => 'de_DE',
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language',
'pattern' => '%s.mo',
),
),
)

在您的 View 脚本中:
<?php echo $this->translate('My Foo'); ?>

如果 您使用文本域,然后您 必须在两个配置中使用它们 View 助手:
'translator' => array('locale' => 'de_DE',
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language',
'pattern' => '%s.mo',
'text_domain' => 'domain-1'
),
),
)

那你 必须做这个:
<?php 
$this->plugin('translate')->setTranslatorTextDomain('domain-1');
echo $this->translate('My Foo')
?>

但任何一种方式都是可能的。您不需要为特定语言环境使用文本域。

关于translation - 如何在没有文本域的情况下使用 Zf2 翻译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12781543/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com