0

我有一个很大的 .po 文件,其中包含我的 PHP 应用程序所需的所有面向用户的字符串。我想知道是否有一个 PHP 函数可以用来获取存储在 .po 或 .mo 中的所有 msgid 字符串的列表。

我没有看到发布的 PHP 函数可以做到这一点。任何人都知道类似的东西,还是我必须自己手动解析我的 .po 文件?

这是我最希望看到的:

$msgids = magic_gettext_keys_function('mydomain');
foreach ($msgids as $msgid) {
    do_something_awesome($msgid);
}
4

1 回答 1

-1

还没有收到任何答案,我假设没有 API 调用可以为我做这件事。但是,从 .po 文件中提取 msgid 字符串几乎是微不足道的:

$path = $GLOBALS['LOCALE_DIR'] . '/en/LC_MESSAGES/mydomain.po';
$poSrc = file_get_contents($path);
preg_match_all('/msgid\s+\"([^\"]*)\"/', $poSrc, $matches);
$msgids = $matches[1];

foreach ($msgids as $msgid) {
    do_something_awesome($msgid);
}
于 2009-07-01T19:37:53.903 回答