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

时间:2013-06-10 18:39:58

标签: php dom xpath

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

除了获取具有标记或标记的Node之外,一切正常。

我想要做的基本上是:

如果元素标签是'对象'那么 <在这里执行代码>

elseif元素标签是'iFrame'然后 <优先替代代码>

有些Div Block会有: 代码:

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

虽然其他人会:

代码:

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

这是唯一让我搞砸的部分。任何想法如何区分元素类型?它总是显示一个空行,如果它是一个IFrame(我有一个Xpath导致父节点检查对象标签)。我已经尝试检查节点是否为空/ null然后尝试搜索iFrame,但它不适用于我并返回一个空行。

1 个答案:

答案 0 :(得分:1)

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

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