Zend framework 2 : Wie set locale globaly?
Muss ich ändern das Gebietsschema dynamisch, je nachdem welche Sprache der Benutzer will.
Ich das einstellen kann in der locale Application/Module.php wie diese :
public function onBootstrap(MvcEvent $e)
{
$translator = $e->getApplication()->getServiceManager()->get('translator');
$translator->setLocale('hu_HU');
}
Aber, wie kann ich das in die controller, wenn ich will, um die Sprache zu ändern ? Ich habe versucht, aber danach kann ich ändern das Gebietsschema nur für diese eine Anfrage und nicht global.
$translator = $this->getServiceLocator()->get('translator');
$translator->setLocale('srb_SRB');
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einrichten der Standard-locale auf Konfigurations-Ebene! Sehen #61 von
module.config.php
von ZendSkeletonApplications Anwendung ModulIch hatte das gleiche Problem. In meinem Benutzer-login-Modul, ich habe mich registriert für MvcEvent auf bootstrap:
Dann, wenn das Ereignis kommt, habe ich dem Gebietsschema, basierend auf den Infos aus der URL:
In das Ende, das nicht wirklich die locale global, sondern nur legt es für jede Anforderung. Der Netto-Effekt ist der gleiche, aus der code-Sicht - d.h., ich habe nicht die locale auf jedem controller.
Hoffe, das hilft.
Diese Arbeit für mich:
}
Und meine modal.config.php:
In der modal.config-Datei, ich denke nicht, dass das folgende ist erforderlich, da Sie den alias 'MvcTranslator' für übersetzer.