PHP DOM的良好、可靠的文档


Good, solid documentation of PHP DOM

我一直在尝试对HTML文档进行一些简单的DOM解析,但这真的很难做到。

我已经研究了PHP DOM类的许多替代方案中的一些(比如简单的xml解析器和简单的HTMLDOM)。我也发现了一个非常有效的dom2array函数,它对于非常基本的解析非常有用,因为您只需要元素的原始值。

然而,这些替代方案中没有一个是真正令人信服的。

DOM的PHP文档通常缺乏细节,而且在很大程度上毫无用处。不过,很多评论确实很有帮助。

我在网上找到的教程通常只涵盖非常基本的内容,比如编写一个20行的XML文档或解析文档中的所有p标记。啊。

有没有专门介绍使用PHP的DOM库处理DOM的网站(或书籍)?

DOM是一个独立于语言的接口,W3C对此进行了详细的记录。

也就是说,如果您的目标是对(通常)结构化信息进行极其简单的解析,那么XML可能不是正确的格式;XML包括各种高级特性(名称空间、DTD、XSLT、属性和文本之间的区别、标记而不是结构化信息)。如果是这种情况,请考虑JSON,它非常容易解析和生成。

任何在名称中表示"DOM"或声称支持它的东西都应该支持W3C定义的DOM API,并且您应该考虑它们的文档规范性,除了特定语言的部分之外。

我应该把我的文章命名为"用PHP解析HTML DOM的最简单方法"我知道,"最简单"不是一个很好的词。这一切都与你想做的事情有关。我做的事情很直接。我想解析独立的HTML文档,并在不同的上下文中呈现内容。

这些是我想做的事情:

  • 分析基本属性,如标题和正文
  • 更改所有文件引用(图像、链接、css、js)以指向有效位置
  • 添加/删除标签中的属性(此处处理1995 HTML)
  • 条形内联样式

我最终选择了简单HTML DOM解析器

它有一个非常小的学习曲线,并且提供了对DOM的简单读/写访问。故事结束了。不过,它有时似乎会被嵌套元素卡住。