类 PoFileParser
解析 PO 格式的文件
命名空间: Cake\I18n\Parser
方法摘要
-
_addMessage() 受保护
将翻译项保存到消息中。
-
parse() 公开
解析便携式对象 (PO) 格式。
方法详情
_addMessage() ¶ 受保护
_addMessage(array $messages, array $item): void
将翻译项保存到消息中。
参数
-
数组
$messages 从文件中收集的消息数组
-
数组
$item 正在检查的当前项
返回值
空
parse() ¶ 公开
parse(string $resource): array
解析便携式对象 (PO) 格式。
来自 https://www.gnu.org/software/gettext/manual/gettext.html#PO-Files,我们应该能够解析具有以下内容的文件:
空白
翻译者注释
. 提取的注释
: 参考...
, 标记...
| msgid 之前的未翻译字符串
msgid 未翻译字符串 msgstr 翻译后的字符串
额外的或不同的行是
| msgctxt 之前的上下文
| msgid 之前的未翻译字符串
msgctxt 上下文
| msgid 之前的未翻译单数字符串
| msgid_plural 之前的未翻译复数字符串
msgid 未翻译单数字符串 msgid_plural 未翻译复数字符串 msgstr[0] 翻译后的字符串 (案例 0) ... msgstr[N] 翻译后的字符串 (案例 n)
定义说明
- 空白和注释是可选的。
- msgid "" 表示空单行定义了标题。
此解析器牺牲了参考实现的一些功能,与该实现的差异如下。
- 翻译者注释和提取的注释被视为同一类型。
- 消息 ID 允许具有除 US-ASCII 之外的其他编码。
具有空 ID 的项将被忽略。
参数
-
字符串
$resource 要解析的文件名
返回值
数组