1

Zend 2 でエラー メッセージ (無効なフォームを送信しようとしたときに表示される) のデフォルト言語を設定するのに苦労しています。クイック スタート チュートリアルからコードをダウンロードし、次の行を ..module\Album\config\ に追加しました。 module.config.php:

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

    $translator = $this->getServiceLocator()->get('translator');
    $translator->setLocale('de_DE');

私のコントローラーで。どちらも機能していないようです。...\vendor\zendframework\zendframework\resources\languages にいくつかの翻訳があります。私は Intl PHP 拡張機能をインストールしていませんが、この拡張機能がなくても翻訳が機能することを願っています。

ご協力いただきありがとうございます、

アンドレアス

4

1 に答える 1

1

いくつかの調査の結果、Intl PHP Extension が本当に必要であることがわかりました。Intl Extension を使用すると、デフォルトのトランスレーターを抽象バリデーターに設定できます。ドキュメントから:

$translator = new Zend\I18n\Translator\Translator();
$translator->addTranslationFile(
   'phpArray',
   'resources/languages/en.php',
   'default',
   'en_US'
);
Zend\Validator\AbstractValidator::setDefaultTranslator($translator);
于 2013-01-16T21:32:22.820 に答える