代码之家  ›  专栏  ›  技术社区  ›  Thiago Belem

在CakePHP上使用gettext\u d()时定义语言

  •  1
  • Thiago Belem  · 技术社区  · 14 年前

    我想用我想用的语言来定义 __d() (gettext()CakePHP翻译函数)。

    我想要这样的东西:

    __d('domain', 'Hello World!', 'pt_BR');

    即使我的网站显示在 恩斯 ,我希望这条信息能以特定的语言显示出来。

    谢谢!

    1 回复  |  直到 9 年前
        1
  •  2
  •   deceze    14 年前

    像这样的东西可以工作(尽管还没有测试):

    function __dl($domain, $str, $lang, $return = false) {
        $original = Configure::read('Config.language');
        Configure::write('Config.language', $lang);
        $str = __d($domain, $str, true);
        Configure::write('Config.language', $original);
    
        if ($return) {
            return $str;
        }
        echo $str;
    }
    
    __dl('domain', 'Foo bar', 'pt_BR');