提取特定 li 元素的 DOMXPath 查询
DOMXPath Query To Extract Specific li Element
我正在尝试根据 child 的内容提取列表元素。 li 有一个锚标签,标题为 'something something'(包括 space)。
示例:
<li><a href="#" title="something something"></a></li>
查询是什么样的?谢谢!
要检索元素及其属性,请使用此 XPath 查询:
/html/body/li/a[@title='something something']
这将得到任何 a
标签 title
属性值为 something something
的 li
标签的子标签(在 html
和 body
标签,它是 better/faster 如果你事先知道完整的结构)。
<?php
$html = '<li><a href="#" title="something something">test</a></li>';
$html .= '<li><a href="#" title="something something2">test2</a></li>';
$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
$lis = $xpath->query("/html/body/li/a[@title='something something']");
foreach ($lis as $li) {
var_dump($li->nodeValue);
}
结果
/Applications/MAMP/htdocs/trello/up.php:9:string 'test' (length=4)
我正在尝试根据 child 的内容提取列表元素。 li 有一个锚标签,标题为 'something something'(包括 space)。
示例:
<li><a href="#" title="something something"></a></li>
查询是什么样的?谢谢!
要检索元素及其属性,请使用此 XPath 查询:
/html/body/li/a[@title='something something']
这将得到任何 a
标签 title
属性值为 something something
的 li
标签的子标签(在 html
和 body
标签,它是 better/faster 如果你事先知道完整的结构)。
<?php
$html = '<li><a href="#" title="something something">test</a></li>';
$html .= '<li><a href="#" title="something something2">test2</a></li>';
$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
$lis = $xpath->query("/html/body/li/a[@title='something something']");
foreach ($lis as $li) {
var_dump($li->nodeValue);
}
结果
/Applications/MAMP/htdocs/trello/up.php:9:string 'test' (length=4)