0

我有一个关于 Zend Framework 2 Form translate 的问题。现在我无法将表单错误消息从英语翻译成意大利语(我的语言)。

我尝试将 module.config.php 设置如下:

//...
'translator' => array(
    'locale' => 'it_IT',
    'translation_file_patterns' => array(
        array(
            'type' => 'phparray',
            'base_dir' => __DIR__. '/../language/form_errors',
            'pattern' => '%s.php'
        )
    ),
),

并且该文件当前加载在 Translator 类中。问题是:即使我写了表单错误的索引(或消息),它也不会翻译表单消息。

return array(
'Skeleton Application' => 'Applicazione Scheletro',
"IS_EMPTY" => 'Il valore non può essere vuoto'
);

但是,如果我使用 $translator->translate('Skeleton Application') 它就像一个魅力......任何提示?

多谢指教。。

4

2 回答 2

3

那是因为您需要翻译英文错误消息,这不是“IS_EMPTY”,而是类似于“此输入是必需的,不能为空”。

我建议您使用 gettext 翻译。它仍然非常快,但为您提供了一些强大的工具来翻译和从源中获取翻译字符串(例如 PoEdit)。

于 2012-09-06T14:29:18.843 回答
2

所有验证消息都已翻译。您可以在目录中找到翻译文件:“resources/languages/”。

看看这个: http ://packages.zendframework.com/docs/latest/manual/en/modules/zend.validator.messages.html

于 2012-10-25T08:17:03.760 回答