zend フレームワークで翻訳検証エラー メッセージを作成するにはどうすればよいですか?
誰かが例を挙げることができますか?
ありがとう
zend フレームワークで翻訳検証エラー メッセージを作成するにはどうすればよいですか?
誰かが例を挙げることができますか?
ありがとう
検証メッセージに関するZFマニュアルからZend_Validate
$validator = new Zend_Validate_GreaterThan();
$validator->setMessage('Please enter a lower value',
Zend_Validate_GreaterThan::NOT_GREATER);
そしてまた:
Zend Frameworkには、200を超える失敗メッセージを含む45を超えるさまざまなバリデーターが付属しています。これらのメッセージをすべて翻訳するのは、大変な作業になる可能性があります。ただし、便利なように、ZendFrameworkには事前に翻訳された検証メッセージが付属しています。
/resources/languages
それらは、ZendFrameworkインストールのパス内にあります。[...]
たとえば、すべての検証メッセージをドイツ語に翻訳するには、Zend_Validate
これらのリソースファイルの使用に翻訳者をアタッチするだけです。
$translator = new Zend_Translate(
'array',
'/resources/languages',
$language,
array('scan' => Zend_Locale::LOCALE_DIRECTORY)
);
Zend_Validate_Abstract::setDefaultTranslator($translator);
もちろん、独自の翻訳を提供することもできます。ロードするだけで、翻訳アダプターで使用できるようになります。基本的には、上記の部分をカスタムパスに交換するだけです。
ゴードンからの答えを少し改善したいだけです。実際の例は
$translator = new Zend_Translate(
'array',
'resources/languages', // you need to copy the resources folder
// (from your Zend Framework installation)
// in the application folder
'it', // 'it' for italian, 'fr' for french, etc.
// Just look at the directories
// Zend_Translate, NOT Zend_Locale
array(
'scan' => Zend_Translate::LOCALE_DIRECTORY
)
);
Zend_Validate_Abstract::setDefaultTranslator($translator);
乾杯!ブルーノ