【发布时间】:2016-04-05 07:39:20
【问题描述】:
我正在尝试从 DOM 对象中获取 DIV 的内容,我正在使用以下代码。 $url 是一个有效的字符串 url,如果我将它放在浏览器中,它会打开一个包含我要查找的 DIV 的页面。
$url 是一个字符串,例如:
$url = 'http://api.testdev.com/testpage.html';
代码
$dom = new DOMDocument();
$dom->loadHTML($url);
$xpath = new DOMXPath($dom);
$rawData = $xpath->query('//div[contains(@class, \'listing-products\')]');
我试图在下面使用正则表达式//div[contains(@class, \'listing-products\')]定位的HTML代码:
<div class="listing-products right-content">
我只是得到一个如下所示的空数组,日志、屏幕或浏览器控制台中没有错误。
DOMNodeList Object
{
[length] => 0
}
我怀疑我的正则表达式模式不是 100% 正确,谁能指出我正确的方向?
【问题讨论】:
-
使用双引号,而不是单引号?
-
@stribizhev,您的示例中只有一个类,div 中有多个类对我不起作用。
-
@stribizhev,想通了,你是对的,代码正在运行,我将字符串传递给
loadHTML函数而不是实际的 HTML。