检查Element是否为iFrame或Object (PHP-Xpath)


Check if Element is iFrame or Object (PHP-Xpath)

我编写了一个使用PHP DOM的脚本。我正在解析一个网页,并通过XPath访问元素。

一切都很好,除了当它涉及到一个节点,将有一个标签或一个标签。

我想做的基本上是:

如果元素标签是'object'则& lt;此处执行代码>

elseif元素标签是'iFrame'那么& lt;执行替代代码>

一些Div块会有:代码:

<div class="scenario1" > 
<object src=xxxx... /> 

而其他人则有:

代码:

<div class="scenario2" > 
<iFrame src=xxxx... />

这是现在唯一让我困惑的部分。知道如何区分元素类型吗?如果是IFrame,它总是显示空行(我有一个指向父节点的Xpath,用于检查对象标记)。我试过检查节点是否为空/null,然后尝试搜索iFrame,但它不适合我,并返回一个空白行。

使用tagName属性,例如,如果$elem是DOMElement:

if(strtolower($elem->tagName) == 'iframe'))
{
    // it's an iframe
}