作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
以下代码输出解析后的 html:
$domd = new DOMDocument('5.0', 'utf-8');
libxml_use_internal_errors(true);
$domd->loadHTML(mb_convert_encoding(($postDetails['content']), 'HTML-ENTITIES', 'UTF-8'));
libxml_clear_errors();
echo $domd->saveHTML();
但是,它会输出额外的标签,例如 <html>
, <head>
等等。我只想获取 body
内的内容标签。我如何实现这一目标?
例如:如果 <body>
标签包含<p>
或其他可能包含内容的标签,我需要按原样显示它们。
最佳答案
saveHTML()
支持可选参数 $node
。使用它,您可以指定文档中应导出的节点而不是整个文档。如果你想导出<body>
仅,然后使用:
echo $domd->saveHTML($domd->getElementsByTagName('body')->item(0));
关于php - 如何从 DOMDocument 输出中过滤 <body> 内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27295463/
我是一名优秀的程序员,十分优秀!