在DOMDocument类中,有一些方法可以按ID和标记名称(getElementById和getElementsByTagName)获取元素,但不能按类获取.有没有办法做到这一点?
举个例子,我如何从以下标记中选择div?
<html>
...
<body>
...
<div class="foo">
...
</div>
...
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
irc*_*ell 12
简单的答案是使用xpath:
$dom = new DomDocument();
$dom->loadHtml($html);
$xpath = new DomXpath($dom);
$div = $xpath->query('//*[@class="foo"]')->item(0);
Run Code Online (Sandbox Code Playgroud)
但那不会接受空间.因此,要按空格分隔类进行选择,请使用以下查询:
//*[contains(concat(' ', normalize-space(@class), ' '), ' class ')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7795 次 |
| 最近记录: |