首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用PHP定位以"enddate-“开头的类的所有元素?

使用PHP定位以"enddate-“开头的类的所有元素?
EN

Stack Overflow用户
提问于 2011-04-22 20:24:31
回答 1查看 202关注 0票数 1

预先感谢您为我提供了明显的PHP限制。

考虑一下这个HTML:

代码语言:javascript
代码运行次数:0
运行
复制
<div class="story first enddate-2011-04-21">
  <h3>misc HTML content</h3> 
  ...
</div>

<div class="sparkly enddate-2014-01-01">
  <p>blah blah blah</p> 
  ...
</div> 

如何使用PHP识别HTML文档中以"enddate-“开头的类中的所有元素?

我想知道的原因是:我想使用PHP (bx it's server端)来定位所有这样的元素,就像上面两个div中的那样;然后获取(并验证)隐含的日期信息,如果今天的日期是结束日期之后,则导致该元素及其内部内容不会显示在所提供的web页面上(因此,在上面,现在删除第一个div的所有证据,但第二个可以在2014年之前显示)。

我找到了一些关于使用PHP解析器定位具有特定ID的元素的建议here on stackoverflow,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
$doc = new DOMDocument();
$doc->loadHTML($html);
$element = $doc->getElementById('ithis');
$element->parentNode->removeChild($element);
$html = $doc->saveHTML();

是否可以将其修改为“以‘结束日期’开头的类"?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-22 20:29:45

我认为你可以用XPath来做这件事。

像这样的事情应该有效:

代码语言:javascript
代码运行次数:0
运行
复制
$xpath = new DOMXPath($domdocument);
$elements = $xpath->query("//*[contains(@class, 'enddate-')]");

( xpath查询未经测试)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5759725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档