Zend_Form、エラーメッセージのロシア化

記事を公開していません。 オリジナルへのリンクはこちらです-http://web-blog.org.ua/articles/uchim-zend-form-russkomu-yazukyしかし、このリンクは機能していません。

したがって、私の意見では、このような貴重な情報の損失を避けるために、ここにも再投稿することにしました。 著者が気にしないことを願っています。



記事全体を書くのではなく、有用なコードを投稿することにしました。 この問題を解決する必要がある人はすべてを理解するでしょう。



//

$data = array(

Zend_Validate_Alnum::NOT_ALNUM => ' "%value%" . ',

Zend_Validate_Alnum::STRING_EMPTY => ' . , ',

Zend_Validate_Alpha::NOT_ALPHA => ' ',

Zend_Validate_Alpha::STRING_EMPTY => ' . , ',

Zend_Validate_Barcode_UpcA::INVALID => '"%value% UPC-A -"',

Zend_Validate_Barcode_UpcA::INVALID_LENGTH => ' "%value%". 12 ',

Zend_Validate_Barcode_Ean13::INVALID => '"%value% EAN-13 -',

Zend_Validate_Barcode_Ean13::INVALID_LENGTH => ' "%value%". 13 ',

Zend_Validate_Between::NOT_BETWEEN => '"%value%" "%min%" "%max%", ',

Zend_Validate_Between::NOT_BETWEEN_STRICT => '"%value%" "%min%" "%max%"',

Zend_Validate_Ccnum::LENGTH => '"%value%" 13 19 ',

Zend_Validate_Ccnum::CHECKSUM => ' . "%value%" ',

Zend_Validate_Date::NOT_YYYY_MM_DD => '"%value%" --(. 2008-11-03)',

Zend_Validate_Date::INVALID => '"%value%" - ',

Zend_Validate_Date::FALSEFORMAT => '"%value%" - ',

Zend_Validate_Digits::NOT_DIGITS => ' "%value%" . ',

Zend_Validate_Digits::STRING_EMPTY => ' . , ',

Zend_Validate_EmailAddress::INVALID => '"%value%" . @',

Zend_Validate_EmailAddress::INVALID_HOSTNAME => '"%hostname%" "%value%"',

Zend_Validate_EmailAddress::INVALID_MX_RECORD => ' "%hostname%" MX- "%value%"',

Zend_Validate_EmailAddress::DOT_ATOM => '"%localPart%" dot-atom',

Zend_Validate_EmailAddress::QUOTED_STRING => '"%localPart%" ',

Zend_Validate_EmailAddress::INVALID_LOCAL_PART => '"%localPart%" "%value%", @',

Zend_Validate_Float::NOT_FLOAT => '"%value%" ',

Zend_Validate_GreaterThan::NOT_GREATER => '"%value%" "%min%"',

Zend_Validate_Hex::NOT_HEX => '"%value%" ',

Zend_Validate_Hostname::IP_ADDRESS_NOT_ALLOWED => '"%value%" - IP-, IP- ',

Zend_Validate_Hostname::UNKNOWN_TLD => '"%value%" - DNS , TLD-',

Zend_Validate_Hostname::INVALID_DASH => '"%value%" - DNS , "-" ',

Zend_Validate_Hostname::INVALID_HOSTNAME_SCHEMA => '"%value%" - DNS , TLD TLD "%tld%"',

Zend_Validate_Hostname::UNDECIPHERABLE_TLD => '"%value%" - DNS . TLD ',

Zend_Validate_Hostname::INVALID_HOSTNAME => '"%value%" - DNS ',

Zend_Validate_Hostname::INVALID_LOCAL_NAME => '"%value%" - ',

Zend_Validate_Hostname::LOCAL_NAME_NOT_ALLOWED => '"%value%" - , ',

Zend_Validate_Identical::NOT_SAME => ' ',

Zend_Validate_Identical::MISSING_TOKEN => ' ',

Zend_Validate_InArray::NOT_IN_ARRAY => '"%value%" ',

Zend_Validate_Int::NOT_INT => '"%value%" ',

Zend_Validate_Ip::NOT_IP_ADDRESS => '"%value%" IP-',

Zend_Validate_LessThan::NOT_LESS => '"%value%" , "%max%"',

Zend_Validate_NotEmpty::IS_EMPTY => ' , , ',

Zend_Validate_Regex::NOT_MATCH => ' "%value%" "%pattern%"',

Zend_Validate_StringLength::TOO_SHORT => ' "%value%", %min% .',

Zend_Validate_StringLength::TOO_LONG => ' "%value%", %max% .',

);

// Zend_Translate, Array

$translator = new Zend_Translate_Adapter_Array($data);

//

$form = new Zend_Form();

// Zend_Translate

$form->setTranslator($translator);

/**

* , .,

*/









私自身は少し違ったやり方をしました-Zend_Formクラスを継承し、コンストラクターでこれをすべて行いました。今ではそれを使用しています。



class My_Form extends Zend_Form {

public function __construct() {

parent::__construct();

$data = array(

...

...

...

);

$translator = new Zend_Translate_Adapter_Array($data);

$this->setTranslator($translator);

}

}









ZFの愛好家への質問-これをもっと慎重に行う方法はあるのでしょうか? たとえば、いくつかの静的メソッドを使用して、アプリケーション全体のフォームバリデータの翻訳を設定しますか?



All Articles