我有XML
数据其中一些项目标签有媒体:内容标签有些没有。如何检查该内容是否存在于该XML
以及如何获得媒体下的说明:content tag?
这里是XML
数据:获取媒体:说明和媒体:内容URL从xml
<rss xmlns:content="" xmlns:wfw="" xmlns:dc="" xmlns:atom="" xmlns:sy="" xmlns:slash="" version="2.0">
<channel>
<item>
<title>Title1</title>
<link>Link</link>
<pubDate>Date</pubDate>
<content:encoded>
<![CDATA[ This is description 1 ]]>
<![CDATA[ This is description 2 ]]>
</content:encoded>
<media:content url="URL" type="image/jpeg">
<media:description>
<![CDATA[ Text ]]>
</media:description>
</media:content>
</item>
<item> -- this item tag does not have media: content
<title>Title2</title>
<link>Link2</link>
<pubDate>Date2</pubDate>
<content:encoded>
<![CDATA[ This is description 3 ]]>
<![CDATA[ This is description 4 ]]>
</content:encoded>
</item>
<item>
<title>Title3</title>
<link>Link3</link>
<pubDate>Date3</pubDate>
<content:encoded>
<![CDATA[ This is description 5 ]]>
<![CDATA[ This is description 6 ]]>
</content:encoded>
<media:content url="UR1L" type="image/jpeg">
<media:description>
<![CDATA[ Text 2 ]]>
</media:description>
</media:content>
</item>
</channel>
</rss>
我想的是:
<?php
function feeds()
{
$url = "http://localhost/xmldata/xmld.xml"; // xmld.xml contains above data
$feeds = file_get_contents($url);
$rss = simplexml_load_string($feeds);
foreach($rss->channel->item as $entry) {
if($entry->children('media', true)->content->attributes()) {
$md = $entry->children('media', true)->content->attributes();
print_r("$md->url");
}
}
}
?>
它返回我的错误象下面这样:
节点不再存在
即使我没有任何想法获得媒体:描述这是在媒体:内容标记。
这不工作..它没有显示的网址和描述 –
@hnn你是否有任何错误? –
不,我没有得到任何错误,只是空白页 –