2

ここにある yahoo music news xml ファイルから情報を取得しようとしています。

http://news.yahoo.com/rss/music

「media:content」タグから「url」の値を取得する方法がわかりません。これが私がこれまでに持っているものです:

<?php
    $newsxml = simplexml_load_file('http://news.yahoo.com/rss/music');
    foreach ($newsxml->channel->item as $newsstory){
         $newsimage = $newsstory['media']->content->url;
    }
?>

私の問題を解決するための助けをいただければ幸いです。ありがとう!

4

2 に答える 2

1

children()これは XML 名前空間であるため、アクセスするにはメディア名前空間の値を に渡す必要があります。

$newsxml = simplexml_load_file('http://news.yahoo.com/rss/music');
foreach ($newsxml->channel->item as $newsstory){
     $newsimage = $newsstory->children('http://search.yahoo.com/mrss/')->content->attributes()->url;
}

メディア名前空間の定義は、次のように定義されていることがわかるように、上部にあります。

xmlns:media="http://search.yahoo.com/mrss/"

于 2013-06-07T08:28:20.883 に答える
0

このコードを使用してループします

$newsxml = simplexml_load_file('http://news.yahoo.com/rss/music');

print "<pre>";
print_r($newsxml->channel);
die;

そして、メディア要素を取得するためのリンクを参照してください

RSS XML 解析の問題 (RSS フィードからメディア コンテンツの値を取得する方法は?)

ここで見ることができます

于 2013-06-07T08:14:49.173 に答える