我有一个很棒的'.po文件,其中包含我的PHP应用程序所需的所有面向用户的字符串。我想知道是否有一个PHP函数,我可以使用它来获取存储在.po或.mo中的所有msgid字符串的列表。
我没有看到发布的PHP函数。任何人都知道类似的东西,或者我必须自己手动解析我的.po文件?
这是我最喜欢看到的:
$msgids = magic_gettext_keys_function('mydomain');
foreach ($msgids as $msgid) {
do_something_awesome($msgid);
}
答案 0 :(得分:0)
还没有收到任何答案,我假设没有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);
}