Php 分析标记之间的文件和组内容

Php 分析标记之间的文件和组内容,php,arrays,file,parsing,Php,Arrays,File,Parsing,我正在尝试分析具有以下结构的文件: Page: name of page Lang: language {1} content of a header {2} content of a paragraph Lang: language {1} content of a header {2} content of a paragraph Page: name of page Lang: language {1} content of a header {2} content of a p

我正在尝试分析具有以下结构的文件:

Page: name of page

Lang: language
{1} content of a header
{2} content of a paragraph

Lang: language
{1} content of a header
{2} content of a paragraph


Page: name of page
Lang: language

{1} content of a header
{2} content of a paragraph
等等

我从云中获取这些内容,保存到一个文件中,然后我想获取每个页面作为一个关联数组,格式如下:

page => page 1
    [lang] => language A
        [1] => content of a header
        [2] => content of a paragraph
    [lang] => language B
        [1] => content of a header
        [2] => content of a paragraph
page => page 2
    [lang] => language A
        [1] => content of a header
        [2] => content of a paragraph
    [lang] => language B
        [1] => content of a header
        [2] => content of a paragraph
...

我一直在尝试从文件构建整个阵列,然后开始按标记分组,但没有成功:/

我最终使用了以下方法:

  • 以整个数组的形式获取文件,将每一行作为一个元素

  • 搜索与所用页面的第一个匹配项,即“page:”后面的字符串

  • 在这样的巧合和下一页之间获取元素

  • 按“Lang”作为键循环结果数组分组


  • 因为我使用的是PHP,所以使用的函数有:
    file()
    array\u search()
    array\u slice()

    @bažmegakapa只是将文件作为一个完整的数组来读取,清理空项,并循环它,以分解每一行的标签
    页面
    Lang
    前后取其值。出了什么问题?我们不能为你写这整件事。但是如果你告诉我们你尝试了什么,以及哪些是弱点,我们可以帮助你修复它。@bažmegakapa我不等待任何代码。只是关于构建这种数据结构的可能方法的想法。我所做的并没有错,只是不够,因为我实际拥有的整个数组都不是按页面分组的,也不是按语言分组的。