0
リモートページの特定のセクションの内容を抽出してPHP文字列(または配列)に保存しようとしています。その特定のセクションでは、次のようになります。DomXPathを使用して特定のクラスの除算のコンテンツを検索して抽出します
<section class="intro">
<div class="container">
<h1>Student Club</h1>
<h2>Subtitle</h2>
<p>Lore ipsum paragraph.</p>
</div>
</section>
、同じページ上のクラス「コンテナ」の他のいくつかのセクションがあるので、私はクラスのコンテナを使用して絞り込むことができないので、クラス「イントロの唯一のセクションがありますので、 」私は、右の部門を見つけるために、次のコードを使用します。
$doc = new DOMDocument;
$doc->preserveWhiteSpace = FALSE;
@$doc->loadHTMLFile("https://www.remotesite.tld/remotepage.html");
$finder = new DomXPath($doc);
$intro = $finder->query("//*[contains(@class, 'intro')]");
そして、この時点で、私は問題を打つんだが - PHPの文字列として$イントロの内容を抽出することはできません。
がさらに
foreach ($intro as $item) {
$string = $item->nodeValue;
echo $string;
}
は、テキストのみの値を与える次のコードをしようと、すべてのタグが取り除かれて、私は本当に、さらなる操作を必要とするために保存すべてのそれらのdiv、H1とH2とのpタグが必要です。
しよう:
はforeach ($intro->attributes as $attr) {
$name = $attr->nodeName;
$value = $attr->nodeValue;
echo $name;
echo $value;
}
エラーを与えている:
Notice: Undefined property: DOMNodeList::$attributes in
だから、私が見つけたDOM要素の完全なHTMLコードを抽出することができますか?