在我的ZF2應用程序中,我想檢索用於翻譯頁面的語言。我使用ZendSkeletonApplication作爲基礎。在Module.php我設置的語言環境這樣的:如何查找ZF2中譯者使用哪種語言?
public function onBootstrap($e){
$translator = $e->getApplication()->getServiceManager()->get('translator');
$translator->setLocale(
Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE'])
)
->setFallbackLocale('en_US');
}
我可以檢索區域和fallbackLocale從的Zend \的I18n \翻譯\翻譯,後來我仍然不知道哪一個被用於翻譯。因爲也沒有辦法(就我沒找到的那樣)來找出哪些語言實際加載到翻譯器中。如果語言環境存在翻譯,我甚至無法測試自己。
也許我在這裏錯過了一些東西。我希望有人能指出。
您可以擴展'Translator'類,覆蓋'translate()'方法並將使用的語言鍵保存在屬性中。 –
@DanielM這是一個選項,但我想檢查onBootstrap事件中的語言,並且那裏的視圖可以不被渲染。無論如何謝謝你的評論。 –