2012-03-08 10 views
0

のYiiユーザ定義のコンポーネントで動作していないと私は小さな部品ことを呼び出すのYiiI18Nは私のYiiのプロジェクトに簡単なコンポーネントを作成し

class MySimpleComponent{ 
    public static function WelcomeCurrentUser(){ 
     $wuser = Yii::t("lstrings","Welcome back "); 
     $wuser .= Yii::app()->session['curuser']; 
     return $wuser; 
    } 
} 

の国際化機能を使用して翻訳する必要があり、その上にテキストがあります私の意見の1つに機能する。

echo MySimpleComponent::WelcomeCurrentUser(); 

しかし、私は私のコントローラのいずれかの言語を変更すると翻訳が動作しません。次のコードに

Yii::app()->language = 'ja' //change language to japanese 

を使用して...私はメッセージが正確であることを確認するために私の国際化文字列を二重チェックお互いに、まだ動作しません。

これは私のlstrings.phpファイル

return array("Hello"=>"こんにちは", 
      "Welcome back "=>"お帰りなさい", 
); 

翻訳が動作しない理由を任意のアイデアですか?任意のソリューションですか?おかげ

答えて

2

コール

Yii::app()->language = 'ja' 

言語翻訳

echo MySimpleComponent::WelcomeCurrentUser(); 

前には限りYiiの前などに有効になります:: T()

+0

また、/ **保護に設定することができますconfig/main.php ** '' sourceLanguage '=>' en_us '、 ' '' language '=>' ja_jp '、' これはアプリケーション全体のデフォルトです。 – arikin

関連する問題