手つかずのコンテンツで特定のdivを抽出したいドキュメントがあります。私がやります:
_$dom = new DOMDocument();
$dom->loadHTML($string);//that's HTML of my document, string
_
およびxpathクエリ:
_$xpath = new DOMXPath($dom);
$xpath_resultset = $xpath->query("//div[@class='text']");
/*I'm after div class="text"*/
_
今、私は_$xpath_resultset
_で得たものに対してitem(0)
メソッドを実行します
_$my_content = $xpath_resultset->item(0);
_
私が得るのは、文字列にエコーまたはsettype()できるオブジェクト(文字列ではない)$ my_contentですが、結果として、完全に削除されたマークアップが得られますか?
ここでdivclass = 'text'からallを取得するにはどうすればよいですか?
ノードを DOMDocument::saveHTML
メソッド:
$htmlString = $dom->saveHTML($xpath_resultset->item(0));
これにより、その特定のDOMNodeとそのすべての子の文字列表現が得られます。