私はこの質問からの提案に従っています Robust, Mature HTML Parser for PHP , about parsing html that may be malformed with DOMDocument .
解析されたドキュメントをループする簡単な方法はありますか? だから私はこのようにhtmlをループしたいと思います。
$html='<ul>
<li>value1</li>
<li>value1</li>
<li>value3
<p>subvalue</p>
</li>
</ul>
<p>hello world</p>';
$doc = new DOMDocument();
$doc->loadHTML($html);
???
foreach (??? as $node)
{
print $node->nodeName.':'.$node->nodeValue;
}
そして、このような結果が得られます。
ul:
li:value1
li:value2
li:value3
p:subvalue
p:hello world
それ自体を使用$doc->childNodes
することは、私が望むことを実際には行いません。木の低い枝には降りないようですので。halfdanが提案したコードを使用したところ、このような結果が得られました。
html:
html:value1
value1
value3
subvalue
hello world