[英]PHP, I18n and gettext not working properly?
我目前正在对现有的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>
...
可以,但是我遇到一个奇怪的问题。 每次加载此页面时,它只会将转换为类似的结果(十分之二)(2x“ Benutzername”,8x“ User Name”)。 有谁知道会导致这个问题的原因吗? 我正在设法弄一个小时,但仍然没有头绪。
既然我已经在这里写过:有谁知道一种更好的国际化现有PHP项目的方法?
谢谢!
是的,有更好的方法。 请参阅ResourceBundle
类,以及一般来说是intl扩展。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.