Witam,
piszę aplikację przy użyciu Zend Framework 2.
Mam dość spory i dziwny problem, wprowadziłem oryginalne tłumaczenia do systemu dla walidacji formularzy oraz tekstów.
Tablica z tłumaczeniami jest prawidłowo oczytana (tłumaczy walidację) lecz problem występuje gdy w tłumaczonym stringu zawarta jest zmienna "%s".
Dokładniej, aktualna przykładowa walidacja przy wprowadzaniu adresu email:
'ba' is not a valid hostname for the email address
Podana wartość nie jest poprawną nazwą hosta
Wartość prawdopodobnie jest nazwą sieci lokalnej. Nazwy sieci lokalnych są niedozwolone
z czego w tłumaczeniach kolejno:
"'%hostname%' is not a valid hostname for the email address" => "Adres email zawiera niepoprawną nazwę serwera '%hostname%'",
"The input does not match the expected structure for a DNS hostname" => "Podana wartość nie jest poprawną nazwą hosta",
"The input appears to be a local network name but local network names are not allowed" => "Wartość prawdopodobnie jest nazwą sieci lokalnej. Nazwy sieci lokalnych są niedozwolone",
czyli zawiera wszystkie potrzebne tłumaczenia.
module.config.php:
'translator' => array(
'locale' => 'pl_PL',
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../../../resources/languages',
'pattern' => '%s.mo',
'text_domain' => 'default'
),
array(
'type' => 'phparray',
'base_dir' => __DIR__ . '/../../../resources/languages',
'pattern' => '/%s/Zend_Validate.php',
'text_domain' => 'default'
)
)
),
Spotkał się ktoś już z powyższym problemem? Myślę że tutaj może być problem w podstawie aplikacji...
Z góry dzięki,
Pozdrawiam Konrad