无法使用gettext php翻译复数

时间:2014-02-01 09:37:41

标签: php gettext

我可以使用gettext库翻译文本。但是,当我尝试将其转换为复数形式时,它只能用英语表示。我已经在我的.po文件中提到了复数形式。我的代码有

public $localeFetch;     
public function __construct() {

        require_once(APP_ROOT."/includes/streams.php");
        require_once(APP_ROOT."/includes/gettext.php");            

        $localeLang = $_REQUEST['lang'];  // Take the Language I/p.            
        $localeLangfile = new FileReader(APP_ROOT."/includes/display/locale/$localeLang/LC_MESSAGES/messages.mo");            

        $this->localeFetch = new gettext_reader($localeLangfile);
    }

getTranslatedString("Your wish list contains");

public function getTranslatedString($text){
        $returnedString = $this->localeFetch->translate($text);             
        return $returnedString;
}

它给出了翻译的输出..

但是,例如,如果我给出

printf (ngettext ("%d product", "%d products", 2), 2);   

Output:
----------------
2 products. 

我想以翻译的复数形式转换它。

我很难搞定翻译的复数形式。我哪里错了?提前致谢

0 个答案:

没有答案