我想检索某个标签中的html代码。我知道DomDocument能够做到这一点。但是,如果我想提取没有外部标签的内容,怎么能实现?在PHP中没有外标签的某个标签中提取Html内容
例如,
$html = '<div><span>Hello world!</span><br><p>some other text</p></div>';
$doc = new DOMDocument;
$doc->loadHTML($html);
echo $doc->saveXML($doc->getElementsByTagName('div')->item(0));
这将输出,
<div>
<span>Hello world!</span>
<br>
<p>some other text</p>
</div>
我希望它没有外部div标签。我尝试了节点值,但它剥离了所有标签。
$html = '<div><span>Hello world!</span><br><p>some other text</p></div>';
$doc = new DOMDocument;
$doc->loadHTML($html);
$node = $doc->getElementsByTagName('div')->item(0);
echo $node->nodeValue;
任何想法?
什么你问并没有真正意义,你问标记及其内容,但你说你不想要的标签。既然你知道你要求什么标签,你可以很简单地用正则表达式去除它,或者你可以简单地选择你想要的标签,而不必介意有外层标签。 – deed02392
您正确地得到了问题。这意味着这个问题是有道理的。如果您认为这很简单,您可以发布解决方案吗? – Teno
我同意它是有道理的,有时我会忘记自己。我已经发布了一个适合你的解决方案。 – deed02392