作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的主页有 2 个分页部分。我只想一次选择所有页面。我该怎么做?
<div class='row row-large s-t-sm'>
<div class='columns'>
<div class='pagination-centered'>
<ul class='pagination'>
<li><a href='1.php'>1</a></li>
<li><a href='2.php'>2</a></li>
<li><a href='3.php'>3</a></li>
</ul>
</div>
</di>
</div>
页面底部有类似这样的内容。当我想选择所有 href
每个 <a>
在每个 <li>
里面, 它返回 null。
<?php
$sitecontent = file_get_contents('www.example.com');
$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTML($sitecontent);
libxml_use_internal_errors(false);
$xpath = new DOMXPath($dom);
$nodes = $xpath->query("//(div[@class='row row-large m-t-sm']/div[@class='column']/div/ul[@class='pagination'])[1]/li/a/@href");
foreach ($nodes as $link) {
$stackHref[]=$link->nodeValue;
}
var_dump($stackHref);//returns array with Zero
?>
最佳答案
尝试下面的 xpath
:-
(//ul[@class="pagination"])[1]//@href
在您的代码中使用上面的 xpath
如下:-
$nodes = $xpath->query('(//ul[@class="pagination"])[1]//@href');
关于xpath - 如何在 xpath 中选择第一个 ul 及其具有相同属性的子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38872392/
我是一名优秀的程序员,十分优秀!