栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

PHP中的DOMDocument

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PHP中的DOMDocument

如果您想使用DOM,则必须了解这个概念。DOM文档中的所有内容(包括DOMdocument)都是一个节点。

DOMdocument是节点的分层树结构。它从根节点开始。该根节点可以有子节点,所有这些子节点都可以自己拥有子节点。基本上,a

DOMdocument
中的所有内容都是某种节点类型,无论是元素,属性还是文本内容。

          HTML         Legend:          /            UPPERCASE = DOMElement       HEAD  BODY      lowercase = DOMAttr      /               "Quoted"  = DOMText    TITLE        DIV - class - "header"     |  "The Title"        H1         |"Welcome to Nodeville"

上图显示了带有某些节点的DOMdocument。有一个带有两个子元素(HEAD和BODY)的根元素(HTML)。连接线称为轴。如果将轴跟随到TITLE元素,您将看到它具有一个DOMText叶。这很重要,因为它说明了一个经常被忽视的事情:

<title>The Title</title>

不是一个,而是两个节点。带有DOMText子级的DOMElement。同样,这

<div >

实际上是三个节点:带有DOMAttr的DOMElement持有DOMText。由于所有这些都从DOMNode继承其属性和方法,因此必须熟悉DOMNode类。

实际上,这意味着您获取的DIV已链接到文档中的所有其他节点。您可以随时移至根元素或向下移至叶子。都在那里。您只需要查询或遍历文档以获取所需信息。

无论你做的是通过遍历

childNodes
中的
DIV
或使用
getElementByTagName()
或XPath是你。您只需要了解您不是在使用原始HTML,而是使用代表整个HTML文档的节点。

如果需要有关从文档中提取特定信息的帮助,则需要澄清要从文档中获取哪些信息。例如,您可以询问如何从表中获取所有链接,然后我们可以回答以下问题:

$div = $dom->getElementById('showContent');foreach ($div->getElementsByTagName('a') as $link) {    echo $dom->saveXML($link);}

但是除非您更具体,否则我们只能猜测哪些节点可能是相关的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/465689.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号