PHP简单HTML DOM解析器:仅获取父级
我正在为此HTML使用“PHP简单HTML DOM解析器”:PHP简单HTML DOM解析器:仅获取父级,php,jquery,domparser,Php,Jquery,Domparser,我正在为此HTML使用“PHP简单HTML DOM解析器”: <ul id="menu-test-header" class="nav-menu"> <li> <a href="">Test</a> <ul class="sub-menu"> <li> <a href="">sub test</a>
<ul id="menu-test-header" class="nav-menu">
<li>
<a href="">Test</a>
<ul class="sub-menu">
<li>
<a href="">sub test</a>
<a href="">sub test</a>
<a href="">sub test</a>
</li>
</ul>
</li>
<li>
<a href="">Test</a>
</li>
<li>
<a href="">Test</a>
<ul class="sub-menu">
<li>
<a href="">sub test</a>
</li>
</ul>
</li>
</ul>
谢谢大家,对我的英语不好表示歉意:-)作为替代,您可以首先指出主
中的第一个子项,然后从那里开始,针对每个谢谢,但这不适用于meIt,可能问题是“PHP简单HTML DOM解析器”不支持>选择器?啊,你说得对!鬼的答案的第二部分绝对是要走的路。一个好主意!但html有时可能略有不同。所以我有点害怕使用这个解决方案。
foreach($html->find(".header-main .nav-menu li > a") as $menu) {
echo $menu->plaintext;
}
foreach($html->find('ul#menu-test-header', 0)->children() as $li) {
echo $li->children(0);
}
$dom = new DOMDocument;
$dom->loadHTML($html_string);
$xpath = new DOMXpath($dom);
$first_list_links = $xpath->evaluate('//ul[@id="menu-test-header"]/li/a');
foreach($first_list_links as $links) {
echo $dom->saveHTML($links);
}