PHP DomDocument 获取标签后的文本

1 html php tags domdocument

我的 php 文件中有这个。

<?php
$str = '<div>
    <p>Text</p>
    I need this text...
    <p>next p</p>
    ... and this
</div>
';

$dom=new DomDocument();
$dom->loadHTML($str);
$p = $dom->getElementsByTagName('p');
foreach ($p as $item) {
    echo $item->nodeValue;
}
Run Code Online (Sandbox Code Playgroud)

这为我提供了 p 标签的正确文本,但我还需要 p 标签之间的文本(“我需要这个文本...”,“...和这个”)。

有人知道如何获取 p 标签后的文本吗?

最好的

May*_*hah 5

使用 DOMX 路径:

$xpath = new DOMXpath($domDocument);

foreach ($xpath->query('//div/text()') as $textNode) {
    echo $textNode->nodeValue;
}
Run Code Online (Sandbox Code Playgroud)