Zend framework2 zend framework 2使用其他注释进行gettext翻译
我想知道是否可能使用已创建的注释来构建其他注释,这些注释除了包含其他文本外,还包含已使用的注释 e、 g //归档Zend framework2 zend framework 2使用其他注释进行gettext翻译,zend-framework2,gettext,zend-translate,xgettext,Zend Framework2,Gettext,Zend Translate,Xgettext,我想知道是否可能使用已创建的注释来构建其他注释,这些注释除了包含其他文本外,还包含已使用的注释 e、 g //归档 msgid "User no logged" msgstr "" msgid "#previous commend# as participant" msgstr "" //Es文件 msgid "User no logged" msgstr "Usuario no logueado" msgid "#previous commend# as pa
msgid "User no logged"
msgstr ""
msgid "#previous commend# as participant"
msgstr ""
//Es文件
msgid "User no logged"
msgstr "Usuario no logueado"
msgid "#previous commend# as participant"
msgstr "#previous translation# como participante"
我想用这个翻译:
$this->translate('User no logged as participant');
//I want obtain: Usuario no logueado como participante
有没有可能用什么方法来改变#…#单词
提前谢谢。这不是你的另一个问题的基本内容吗?但如果我正确理解您的意图,可能是这样的:
echo $this->translate(sprintf(
'%s as participant',
$this->translate('User no logged')
));
但在这种情况下,对我来说,这只是一行中的两个翻译,如:
echo sprintf('%s %s',
$this->translate('User no logged'),
$this->translate('as participant')
);
在这个问题中,我只想使用une time$this->translate(),不想使用%s,因为我有一个包含所有消息的类(没有%s)。 我只想在.po文件中关联评论(可能吗?) Strings.php
class Strings {
public static $USER_NO_LOGGED = 'El usuario no esta logueado.';
private static $translator;
private static $translatorTextDomain = 'default';
public static function setTranslator(Translator $translator) {
self::$translator = $translator;
}
public static function getTranslator() {
return self::$translator;
}
public static function setTranslatorTextDomain($textDomain = 'default') {
self::$translatorTextDomain = $textDomain;
}
public static function getTranslatorTextDomain() {
return self::$translatorTextDomain;
}
public static function getMessage($message) {
$translator = self::getTranslator();
if (!$translator) return $message;
return self::getTranslator()->translate($message, self::$translatorTextDomain);
}
}
如您所见,getMessage方法只有一个translate方法,对函数的调用如下所示:
echo Strings::getMessage(Strings::$USER_NO_LOGGED);
在这个问题中,我只想使用une time$this->translate(),不想使用%s,因为我有一个包含所有消息的类(没有%s)。好吧,我已经向您展示了我可以想到的两个选项;)另外,我实际上根本不知道你们班做什么。我看不出有任何好处^^