gpt4 book ai didi

php - 独立于系统区域设置设置 gettext 区域设置

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:42:02 26 4
gpt4 key购买 nike

我们在 PHP 应用程序中使用 gettext 进行翻译。它是这样初始化的:

<?php
setlocale(LC_MESSAGES, $locale);
putenv("LANG=$locale");
putenv("LANGUAGE=$locale");

bindtextdomain($domain, $pathToLocales);
textdomain($domain);

这工作正常,但它也会翻译来自操作系统的错误消息。以DNS解析失败为例,而不是Name or service not known我们看到Der Name oder der Dienst ist nicht bekannt在我们德国网站的错误日志中。

我有gisted a test case .该脚本将翻译一个字符串,然后引发 No such file or directory错误。我不想翻译这个错误。

有没有什么方法可以在不更改操作系统错误消息的情况下配置 gettext 语言环境?我们不想将 gettext 更改为其他翻译机制(数组、xliff,随便你怎么说)。我们不关心 Windows 和 mod_php,但解决方案必须适用于 php-fpm 5.4 和 cli。

最佳答案

您正在使用 LC_MESSAGES 这意味着“用于系统响应(如果 PHP 是使用 libintl 编译的则可用)”我会尝试忽略此选项,例如 setlocale(LC_ALL ^ LC_MESSAGES, $语言环境)

http://www.php.net/manual/en/function.setlocale.php

关于php - 独立于系统区域设置设置 gettext 区域设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17169603/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com