cakephp 3翻译问题

时间:2016-07-31 07:56:15

标签: flash localization cakephp-3.x

定义:

我想翻译我的网站英语 - 阿拉伯语。我完全遵循CakePHP 3文档,但它无法正常工作。

到目前为止我做了什么:

我的网站的所有内容都可以翻译,除了flash消息ex:所有files.ctp正常翻译

/ src / Controller / UsersController:

$this->Flash->error(__('Your username or password is incorrect.'));
  

我更改语言时没有翻译

.po文件生成:

...

msgid "Your username or password is incorrect."

msgstr "اسم المستخدم او كلمة السر غير صحيحتان"

...

区域设置目录结构

/ src / Locale文件现在看起来像这样:

/ar_JO
   /default.po

尽管我试图在我的网站上翻译我的FLASHES消息,  我没有任何工作。我认为这是一个Cache问题,所以我删除了/ tmp / cache / persistent /.

中的文件

1 个答案:

答案 0 :(得分:1)

我解决了这个问题谢谢大家

我刚刚在控制器中添加了以下代码:

public function beforeFilter(Event $event) {
.....
....
 $session = $this->request->session();
 $lang=$session->read(’System.language.code’);
        if($lang=='en_US'){
            \Cake\I18n\I18n::locale('en_US');
        }else{
            \Cake\I18n\I18n::locale('ar_JO');
        }
    }