php翻译

时间:2011-06-07 14:07:34

标签: php localization gettext

好的,我在这里失去理智...... 我有一个网页,我需要翻译它。为了测试翻译,我设置了一个helloworld类型的文件来测试它,然后我在完成后将代码应用到整个页面。所以:

我有一个文件test.php,它包含:

<?php
$directory = dirname(__FILE__).'/l';
$domain = 'mydomain';
$locale ="hr_HR";

putenv("LANG=".$locale);

setlocale( LC_ALL, $locale);
bindtextdomain($domain, $directory);
textdomain($domain);
bind_textdomain_codeset($domain, 'UTF-8');
echo _("Hello World"); 
?>

该文件位于d:\xampp\htdocs\文件夹

我有一个文件hr_HR.po,它包含:

msgid ""
msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. Text in function
#: test.php:8
msgid "Hello World"
msgstr "TEST"

它位于d:\xampp\htdocs\l\hr_HR\文件夹中。

使用 poedit 我能够从.po文件中制作.mo文件......

所以一切都应该工作正常,但不是......任何帮助都会受到赞赏!!!

提前致谢!

1 个答案:

答案 0 :(得分:0)

  • 是否安装了gettext?
  • 是否安装了PHP模块gettext?
  • .mo文件存在吗? Apache是​​否允许阅读它们?
  • 是否安装了所需的区域设置?
  • Apache已重启吗?