ファイサル・シャニ:
私は、ウェブサイトからのタイトル、説明、画像を取得するためにPHPとHTMLの簡単なドムパーサを使用しています。私が直面しています問題は、私はいけないと、これらのHTMLタグを除外するために、どのようにHTMLを取得しています。以下の説明です。
ここで解析されたサンプルのHTML構造です。
<div id="product_description">
<p> Some text</p>
<ul>
<li>value 1</li>
<li>value 2</li>
<li>value 3</li>
</ul>
// the div I dont want
<div id="comments">
<h1> Some Text </h1>
</div>
</div>
私は、解析するPHPスクリプトの下に使用しています
foreach($html->find('div#product_description') as $description)
{
echo $description->outertext ;
echo "<br>";
}
上記のコードは、ID「PRODUCT_DESCRIPTION」とdivの内側のすべてを解析します。私はIDが「コメント」とのdiv要素を除外したいどのような。私は、文字列にこれを変換しようとした後、最後の文字を除外するためにSUBSTRを使用しますが厥が動作していません。いけない理由を知っています。私はこれを行うことができます方法についての任意のアイデア?私は、構文解析されたHTMLからdiv要素を除外することができます任意のアプローチが動作します。感謝
ニマ:
あなたは彼らを設定することで、したくない要素を削除することができますoutertext = ''
:
$src =<<<src
<div id="product_description">
<p> Some text</p>
<ul>
<li>value 1</li>
<li>value 2</li>
<li>value 3</li>
</ul>
<!-- the div I don't want -->
<div id="comments">
<h1> Some Text </h1>
</div>
</div>
src;
$html = str_get_html($src);
foreach($html->find('#product_description') as $description)
{
$comments = $description->find('#comments', 0);
$comments->outertext = '';
print $description->outertext ;
}