Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中隐藏gettext信息_Php_Gettext_Php Gettext - Fatal编程技术网

如何在php中隐藏gettext信息

如何在php中隐藏gettext信息,php,gettext,php-gettext,Php,Gettext,Php Gettext,我正在使用gettext PHP函数编写简单的脚本。一切都很好,但我试着去监控改变了什么 例如,当用户更改2个字段时 Type: (old) Agreement (new) Anex Notes: (old) #empty field# (new) Agreement ID: 123 我的editinfo生成器看起来是这样的 foreach($checkArray as $row => $value) { if ($addData[$row] != $checkArray[$ro

我正在使用gettext PHP函数编写简单的脚本。一切都很好,但我试着去监控改变了什么

例如,当用户更改2个字段时

Type: (old) Agreement (new) Anex
Notes: (old) #empty field# (new) Agreement ID: 123
我的editinfo生成器看起来是这样的

foreach($checkArray as $row => $value)
{
    if ($addData[$row] != $checkArray[$row])
    {
        $editInfo .= ' <b>' . _("FILED") . '</b> ' . _("$row") . ' <b>' . _("CHANGED FROM") . '</b> ' . _($checkArray[$row]) . ' <b>' . _("FOR") . '</b> ' . _($addData[$row]) . '<br />';
    }
}
<b>POLE</b> Type <b>ZMIENIONE Z</b> Umowa <b>NA</b> Aneks <br />
<b>POLE</b> Notes <b>ZMIENIONE Z</b> Project-Id-Version: 
POT-Creation-Date: 
PO-Revision-Date: 
Language-Team: 
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Generator: Poedit 2.0.9
Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);
Last-Translator: 
Language: pl
 <b>NA</b> Agreement ID: 123<br />
foreach($checkArray作为$row=>$value)
{
if($addData[$row]!=$checkArray[$row])
{
$editInfo.=''.'已存档'.''($row'')'.''已从($checkArray[$row])更改'.'FOR'.''($addData[$row])。
; } }
但我收到了这样的信息

foreach($checkArray as $row => $value)
{
    if ($addData[$row] != $checkArray[$row])
    {
        $editInfo .= ' <b>' . _("FILED") . '</b> ' . _("$row") . ' <b>' . _("CHANGED FROM") . '</b> ' . _($checkArray[$row]) . ' <b>' . _("FOR") . '</b> ' . _($addData[$row]) . '<br />';
    }
}
<b>POLE</b> Type <b>ZMIENIONE Z</b> Umowa <b>NA</b> Aneks <br />
<b>POLE</b> Notes <b>ZMIENIONE Z</b> Project-Id-Version: 
POT-Creation-Date: 
PO-Revision-Date: 
Language-Team: 
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Generator: Poedit 2.0.9
Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);
Last-Translator: 
Language: pl
 <b>NA</b> Agreement ID: 123<br />
ZMIENIONE Z Umowa NA Aneks电杆类型
POLE Notes ZMIENIONE Z项目Id版本: 罐创建日期: 采购订单修订日期: 语文小组: MIME版本:1.0 内容类型:文本/纯文本;字符集=UTF-8 内容传输编码:8比特 X-Generator:Poedit 2.0.9 复数形式:nplurals=3;复数=(n==1?0:n%10>=2&&n%10,我们可以从中阅读:

这还有另一个优点,因为PO文件GNU gettext中的空字符串通常被转换为附加到该特定MO文件的一些系统信息,并且空字符串必然成为原始表和转换表中的第一个,这使得系统信息非常容易找到

您的
.po
文件可能包含
msgid
,它是一个空字符串,其值只是系统信息

因此,当您调用
\时(“”
),您会得到它。如果找不到,您可以尝试传递一些默认字段:

_($checkArray[$row] ?: "default")

非常感谢!我将尝试并回复结果。