【发布时间】:2015-07-10 10:55:49
【问题描述】:
我在一个 PHP 驱动的网站(PHP/5.3 在 Windows 上作为 Apache 模块运行)安装了一个有效的 gettext。问题是某些任意字符串无法翻译。少数文本(少于 1% 且始终相同)保留为原始语言。最疯狂的是细节:
-
周围的字符串会被翻译:
Line 95: <th><?php echo _('Address'); ?></th> <-- Translated --> Line 96: <th><?php echo _('Number'); ?></th> <-- Not translated!!! --> Line 97: <th><?php echo _('City'); ?></th> <-- Translated --> - 在另一个具有不同 Windows 版本和架构的 PHP/5.3 服务器中可以 100% 重现:我在相同的字符串中遇到问题。
- 如果我更改源文本、翻译或两者,问题仍然存在于完全相同的位置。
- 受影响的字符串相当无趣(根本没有非 ASCII 字符或我能想到的任何特殊性)。
有什么想法或假设吗?
【问题讨论】:
-
你能举一个最基本的、可重现的例子吗?
-
@hek2mgl - 恐怕不会。这是一个由同事编写的自制 MVC 框架,问题在外部无法生存:(
-
恕我直言,在这种情况下,这个问题是题外话。
-
我刚刚能够使用相同的代码和两个相同的 *.po 文件来重现它。我怀疑 *.mo 的编译有问题 :-!
-
我没有这么说,我只是担心当它无法重现时,没有人有机会回答这个问题。