2017-08-23 5 views
0

含まれている最初の段落を取得することは簡単です:がどのように最初の段落を取得する画像

$dom = new DOMDocument(); 
$dom->loadHTML($html); 
$firstParagraph = $dom->getElementsByTagName('p')->item(0); 

しかし、私はイメージで最初の段落を取得し、imgタグのsrc属性の値を取得する必要があります。これを行う方法?

+1

何も一致した最初のものにするには?それともオプションではないのですか? :) – ThisGuyHasTwoThumbs

+1

XPathが適切かもしれません。 –

+0

私はjQueryで答えを出しました。あなたが望むなら、javascript dom要素を介して同じロジックを使用することができます。 –

答えて

0

は、pタグに含まれるすべてのimgの要素を取得し、それらを反復してsrc属性を印刷DOMXPath

を使用していくつかの例の下を参照してください。

$xpath = new DOMXPath(@DOMDocument::loadHTML($html)); 
$query = $xpath->query("//p//img"); 

foreach($query as $img){ 
    print $img->getAttribute('src') . PHP_EOL; 
} 

これはDomAttrオブジェクトを返しますので、クエリが直接src

$query = $xpath->query("//p//[email protected]"); 

foreach($query as $domAttribute){ 
    print $domAttribute->value . PHP_EOL; 
} 

我々の出力このようなsrc属性。

は直接JS/jqueryのを使用してと間違って

$result = $xpath->evaluate("string(//p//img/@src)"); 
print $result . PHP_EOL; 
関連する問題