Xpath 节点值/文本内容无法看到<BR>标记



HTML 如下:

<a href="#">ABC<BR>DEF</a>

但是,nodeValue 和 textContent 属性都"ABCDEF"显示为值。

有什么方法可以显示或解析<BR>

也许这会帮助你: DOMNode::C14N

它将返回节点的 HTML。

<?php
$a = '<a href="#">ABC<BR>DEF</a>';
$doc = new DOMDocument();
@$doc->loadHTML($a);
$finder = new DomXPath($doc);
$nodes = $finder->query("//a");
foreach ($nodes as $node) {
var_dump($node->c14n());
}

演示

我知道你已经解决了你的问题,但我想添加一个更直接的解决方法......

$a = '<a href="#">ABC<BR>DEF</a>';
$doc = new DOMDocument();
$doc->loadHTML($a);
$xp = new DomXPath($doc);
$nodes = $xp->query("//a/node()");
$text = '';
foreach ($nodes as $node) {
$text .= $doc->saveHTML($node);
}
echo $text;

输出。。。

ABC<br>DEF

相关内容

最新更新