简单的HTML DOM:如何让不特定属性的标签(simple html dom: how get a

2019-07-29 07:27发布

我想用“一流”来获得标签属性等于“SomeClass的”,但只有那些没有定义属性“身份证”标签。

我尝试以下(基于此答案),但没有工作:

$html->find('.someclass[id!=*]');

注意:

我使用的是简单的HTML DOM类和基本的文档,他们给的,我没有找到我需要什么。

Answer 1:

简单的HTML DOM类不支持CSS3伪类这是需要负属性匹配。

这是简单解决的限制没有太多的麻烦。

$nodes = array_filter($html->find('.something'), function($node){return empty($node->id);});


Answer 2:

从PHP简单的HTML DOM解析器手册 ,下如何找到HTML元素? ,我们可以看到:

[!属性]匹配不具有指定属性的元素。

您的代码将变为:

$html->find('.someclass[!id]');

这将匹配一类元素someClass没有一个id属性。


我原来的答案是基于要素的选择,就像我们会用jQuery,因为简单的HTML DOM解析器声称支持他们自己的主页 ,我们可以读到:

找到选择就像jQuery的HTML页面上的标签。

我真诚的歉意那些谁被我原来的答复气恼,表达了他们的意见不满!



文章来源: simple html dom: how get a tag without certain attribute