2013-09-22 14 views
15

Symfony 2.3でCurentロケールを取得するにはどうすればよいですか?symfony 2.3で現在のロケールを取得する方法は?

私はこのようなURLを持っています: /{_locale}/blog/articleデフォルトパラメータとしてのFR。 私は次のことを試してください:私は$this->get('session')->set('_locale', 'fr');

を使用することができることを承知していますが、問題は、ユーザーが最初に私のウェブサイトを訪問するとき、彼は保存され、何も持っていないということです $this->get('request')->getLocale()

が、それは常に私のデフォルトparameter.Andを与えます彼のセッションで

答えて

33

あなたはの$ this - の違いは何だ、こんにちは。この

$request = $this->get('request'); 
echo $request->getLocale(); 
+0

によって現在のロケールを取得することができます>( 'リクエスト')を取得 - >のgetLocale()との$ this - >( '翻訳')を取得 - > getLocale()? – CappY

+0

@CappYは基本的には現在のロケールを返しますが、 'get( 'translator')'はロケールを提供することで希望の言語の翻訳を得ることができるような、より多くの機能に使用できます。 –

+0

フォームタイプではどうなりますか?フォームタイプにリクエストを注入しようとするとエラーが発生しました – petekaner

関連する問題