PHP从带有页码的docx中获取h1、h2标题


PHP Get h1, h2 headings from docx with page number

我想从一个word docx文件中获取标题h1、h2,该文件的页码是从哪里获取的。例如,第1页中有标题"标题h1"answers"标题h2",其他页面上有其他h1、h2标题。我想用它们的页码来取这些。可以是类似的东西

array(
    0 => array( 
       h1 => array('h1 headings goes here'),
       h2 => array('h2 headings goes here...')
       page=>'page number here'))

我能够通过将docx转换为zip并使用DOMDocument读取xml来获取标题。但我无法从我选择的特定标题中获得页码。

请分享实现此功能的最佳方式。

我怀疑页码是否存储在docx中,因为打印之前不必生成页码。Word可以在编辑过程中显示它,是因为它生成而不是存储它以供显示。

正如Cindy Meister在对您的问题的评论中提到的那样,如果文档中有页码,您可以从目录(或索引)中获取页码。在这种情况下,只需在toc中找到对应于h1,h2的行。

但即便如此,它可能也要等到文件打印出来后才能更新。