在PHPDOMXPath中,我想用html标记和文本获取我的完整页脚
我想用domxpath获取包含所有html标记和文本的页脚。 html:在PHPDOMXPath中,我想用html标记和文本获取我的完整页脚,php,html,xpath,domdocument,Php,Html,Xpath,Domdocument,我想用domxpath获取包含所有html标记和文本的页脚。 html: 您可以只针对父页脚,然后迭代子页脚,然后使用->saveHTML()并将它们不断添加到字符串容器中: $dom = new DOMDocument('1.0'); $dom->loadHTML($input); $xpath = new DOMXPath($dom); $tags = $xpath->query('//div[contains(@class,"footer")]'); $innerHTML =
您可以只针对父页脚,然后迭代子页脚,然后使用
->saveHTML()
并将它们不断添加到字符串容器中:
$dom = new DOMDocument('1.0');
$dom->loadHTML($input);
$xpath = new DOMXPath($dom);
$tags = $xpath->query('//div[contains(@class,"footer")]');
$innerHTML = '';
if($tags->length > 0) { // if found
foreach($tags->item(0)->childNodes as $c) {
$innerHTML .= $dom->saveHTML($c);
}
}
echo $innerHTML;
这正是我想要的:)谢谢alot@user3696557当然,我很高兴这有帮助
$dom = new DOMDocument('1.0');
$dom->loadHTML($input);
$xpath = new DOMXPath($dom);
$tags=$xpath->query('//div[contains(@class,"footer")]');
foreach ($tags as $tag) {
$innerHTML = '';
$children = $tag->childNodes;
foreach ($children as $child) {
$tmp_doc = new DOMDocument();
$tmp_doc->appendChild($tmp_doc->importNode($child,true));
$innerHTML .= $tmp_doc->saveHTML();
}
}
$dom = new DOMDocument('1.0');
$dom->loadHTML($input);
$xpath = new DOMXPath($dom);
$tags = $xpath->query('//div[contains(@class,"footer")]');
$innerHTML = '';
if($tags->length > 0) { // if found
foreach($tags->item(0)->childNodes as $c) {
$innerHTML .= $dom->saveHTML($c);
}
}
echo $innerHTML;