2

DOMDocument を使用して HTML を反復処理し、<p>タグ内のコンテンツを取得しています。しかし同時に、から何も取得したくなくhref、タグ内divspan情報も取得します。<p>以下のコードからどのように進めればよいですか:

$doc = new DOMDocument();
$doc->loadHTML($data);
$pas = $domDoc->getElementsByTagName("p");
foreach ($pas as $pa)
    $pa->textContent

getElementsByTagName() div、span、href fromの DOMDocument をさらに実行できます$pasか? それとも、正規表現を行う必要がありますか?

4

1 に答える 1

1

このように使用できます

$doc = new DOMDocument();
$doc->loadHTML($data);
$rootElement = $document->documentElement;//selecting document root

$pTags = $rootElement->getElementsByTagName("p");//selecting all p tags from DOM
$pas = $pTags->item(0);// selecting first p tag

foreach ($pas as $pa) {
    if($pa->nodeName == 'div' || $pa->nodeName == 'span' || $pa->nodeName == 'a')
    continue;
    // do everything else here
}
于 2012-12-31T10:18:45.763 に答える