如何使用PHP的po/pot文件?

Raj*_*rma 5 php gettext mo php-gettext po

我在一个文件夹中有.po.mo文件,其地址是/ locale/nld_nld/LC_MESSAGES /.这两个文件的名称都是消息.我一直在尝试使用以下代码:

try.php:

<?php
require_once("Localization.php");
echo _("Hello World!");
?>
Run Code Online (Sandbox Code Playgroud)

Localization.php在这里:

<?php
$locale = "nld_nld";
if (isSet($_GET["locale"])) $locale = $_GET["locale"];
putenv("LC_ALL=$locale");
setlocale(LC_ALL, $locale);
bindtextdomain("messages", "./locale");
bind_textdomain_codeset("messages", 'UTF-8');
textdomain("messages");
?>
Run Code Online (Sandbox Code Playgroud)

try.php和Localization文件都在同一目录中.另外,我用xampp.我也实施了phpinfo();.在表格中,在"GetText支持"前面,提到了启用.该messages.pomessages.mo文件是我使用poEdit的创建有效文件.我是一个Windows用户.但是,当我打开try.php时,它只是回显了Hello World!(不是它的翻译字符串.另外,我已经将.po文件100%翻译(根据poEdit).但是,我没有得到结果.对此有点帮助将不胜感激.

提前致谢!

Lor*_*col 0

问题可能是 UTF-8 中的“-”。为了与 Windows 兼容,还需要添加其他行。尝试阅读此内容:http://www.php.net/manual/en/function.setlocale.php#89076