我目前正在国际化一个现有的PHP项目,并认为最简单的方法是通过集成I18n + gettext。
目前我有一个I18n.php:
<?php
setlocale(LC_ALL, 'de_DE.UTF-8');
bindtextdomain('cms', './locale');
textdomain('cms');
?>
每个需要翻译的文件都包含哪些内容。
示例:login.inc.php:
include_once("i18n.php");
...
<tr>
<td width='40%' align='right'>"._('User Name').":</td>
<td width='60%'><input name='USERNAME' type='text' class='login_txt'></td>
</tr>
<tr>
<td align='right'>"._('Password').":</td>
<td><input name='PASSWORD' class='login_txt' type='password'></td>
</tr>
...
它有用,但我有一个奇怪的问题。它只翻译为我加载此页面的10次中的2次(2x“Benutzername”,8x“User Name”)。有谁知道什么可能导致这个问题?我试图弄清楚它已经持续了一个小时但仍然没有线索。
因为我已经在这里写了:有没有人知道更好的方法来实现现有PHP项目的国际化?
谢谢!