Php PO、MO翻译文件

Php PO、MO翻译文件,php,translation,gettext,po,mo,Php,Translation,Gettext,Po,Mo,我想制作一个多语言应用程序,我听说了.po文件,但我找不到它,我制作了这个代码 我在应用程序中创建了一个名为languages的目录,并将ar_EG.po文件放入其中 我尝试了languages\ar\LC\u MESSAGES,但它也不起作用 putenv('LC_ALL=ar_EG'); setlocale(LC_ALL, 'ar_EG', 'ara_EGY'); $domain = 'ar_EG'; bindtextdomain($domain, "./languages"); // I

我想制作一个多语言应用程序,我听说了
.po
文件,但我找不到它,我制作了这个代码

我在应用程序中创建了一个名为
languages
的目录,并将
ar_EG.po
文件放入其中 我尝试了
languages\ar\LC\u MESSAGES
,但它也不起作用

putenv('LC_ALL=ar_EG');
setlocale(LC_ALL, 'ar_EG', 'ara_EGY');

$domain = 'ar_EG';
bindtextdomain($domain, "./languages"); // I think the error here
textdomain($domain);

// to verify that localization is enabled and it works as intended:
echo strftime("%A %B %Y", strtotime("01/30/2013")), "<br>";

echo gettext("login"); // here not working 
putenv('LC_ALL=ar_EG');
setlocale(LC_ALL,'ar_EG','ara_EGY');
$domain='ar_EG';
bindtextdomain($domain,“./语言”);//我认为这是个错误
textdomain($domain);
//要验证是否已启用本地化并按预期工作,请执行以下操作:
回声标准时间(“%A%B%Y”,标准时间(“01/30/2013”),“
”; echo gettext(“登录”);//这里不工作
您需要将po文件编译成mo文件,然后将其放在mo文件中

另外,您需要确保安装了GetText


您需要将po文件编译成mo文件,然后将其放在mo文件中

另外,您需要确保安装了GetText


编辑后必须重新启动服务器。谢谢大家的帮助

编辑后必须重新启动服务器。感谢大家的帮助

@MostafaMaklad:Dig it:-如果你只搜索它,谷歌有更多以PHP为中心的资源。@MostafaMaklad:Dig it:-如果你只搜索它,谷歌有更多以PHP为中心的资源。请仔细检查代码中的返回值。例如,
bindtextdomain
确实返回值。是哪一个?此外,我们在这里看不到您的
.po
文件,它可能只是不包含
登录“
的条目。您需要先进行一些基本的故障排除以了解更多信息。它返回语言目录的路径如果该值正确-只有您可以说-则错误不在您在上面的示例代码中留下注释的位置。你需要进一步排除故障。好了,完成了,服务器必须在运行之前重新启动Maklard:你的PHP使用哪种SAPI?(见或)。您是否将PHP作为Apache模块运行?请仔细检查代码中的返回值。例如,
bindtextdomain
确实返回值。是哪一个?此外,我们在这里看不到您的
.po
文件,它可能只是不包含
登录“
的条目。您需要先进行一些基本的故障排除以了解更多信息。它返回语言目录的路径如果该值正确-只有您可以说-则错误不在您在上面的示例代码中留下注释的位置。你需要进一步排除故障。好了,完成了,服务器必须在运行之前重新启动Maklard:你的PHP使用哪种SAPI?(见或)。您是否将PHP作为Apache模块运行?