2012-07-20 8 views
10

申し訳ありませんが、これを再投稿すると申し訳ありませんが、私は気にすることはできません。タグ名でDOM要素をDOMDocument :: loadHTMLとgetElementsByTagNameで取得する

私はPHP

HTMLを含む文字列の最初のimgの要素を取得しようとしています

$html = '<p><img src="http://placekitten.com/200/300" alt="" width="200" height="300" /></p>'; 
$dom = new DOMDocument; 
$dom->loadHTML($html); 
$imgs = $dom->getElementsByTagName('img'); 
var_dump($imgs); 

これは、1つの出現を見つける必要がある場合object(DOMNodeList)#57 (0) { }を吐きます。

私は運もなくXPathで試してみました。

答えて

16

使用この:働い

$img = $dom->getElementsByTagName('img')->item(0); 
echo $img->attributes->getNamedItem("src")->value; 
+0

は、ありがとうございました。どのように要素全体を取得するのですか? –

+0

具体的に何をしたいですか? ?要素全体は、私の答えの中の '$ img'変数のDOMを介してアクセス可能です。 – nickb

+0

私はすでにあなたの答えに成功しましたが、 '$ img'の動作を知りたいので興味があります。つまり、すべての要素を取得します(' echo $ img; 'は要素を出力しません)。 –

関連する問題