PHP简单的HTML Dom只选择内部文本而不是子内部文本

use*_*054 6 html php dom

我正在使用 PHP 简单的 HTML DOM 类来解析 html。我想选择带有id="content"内部文本的div ,但是当我调用时$selecrot->plaintext,它也会返回 sub div 文本

示例 HTML

<div id="content">
Hello World.
<div id="sub-content1">
Text I don't want to select.
</div>
<div id="sub-content2">
Text I don't want to select
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

示例代码

//suppose $html contains above html
$selector = $html->find("div#content", 0); 
echo $selector->innertext; 
//it outputs "Hello World. Text I don't want to select. Text I don't want to select"
//but 
Run Code Online (Sandbox Code Playgroud)

我只想要“Hello World”

小智 5

include_once('simple_html_dom.php');
$html = new simple_html_dom();

$text = '<div id="content">
Hello World.
<div id="sub-content1">
Text I don\'t want to select.
</div>
<div id="sub-content2">
Text I don\'t want to select
</div>
</div>';

$html->load($text);
$selector =$html->find("div#content",0)->find("*");
foreach($selector  as $node){
$node->outertext = '';
}
$html->load($html->save()); 
$selector =$html->find("div#content",0);
echo $selector->innertext;
Run Code Online (Sandbox Code Playgroud)