我正在使用po文件来翻译我的应用程序使用gettext函数。 我有很多字符串使用格式化字符,如空格,冒号,问号等......翻译PHP字符串 - 包括格式化字符或不?
这里最好的实践是什么?
例如为:
_('operating database: '). DB_NAME. _(' on ').DB_HOST;
_('Your name:');
或
_('operating database').': '. DB_NAME.' '._('on').' '.DB_HOST;
_('Your name').':';
我应该让他们在翻译或者是更好地让他们硬编码?优缺点都有什么?
在某些语言上,您不能说“DB_HOST上的DB_NAME”,但例如“DB_HOST'xx DB_NAME”或其他。即使存在重复(包括DB_NAME和DB_HOST作为变量),我更愿意翻译整个字符串。 – enenen
大写字母中的单词是php常量,它们无法翻译 – abimelex
当然。但他们可以用在翻译的不同位置。您无法将'CONSTANT1 translated_word CONSTANT2'转换为'CONSTANT1'translated_word some_other_word CONSTANT2'。因此,请确定您是否只需要翻译或翻译和国际化。 :) – enenen