1

下面是我用来创建电影视频列表的代码。出于某种原因,我无法让 media:content 正常工作。

这就是我现在所拥有的

$xml_output .= "\t<media:content url='" . $row['name'].".m4v" . " type='video/mpg' />\n";

这是整个事情

    $xml_output = "<?xml version=\"1.0\"?>\n"; 
    $xml_output .= "<channel>\n"; 
    $xml_output .= "\t\t<title>Ellucid Movies</title>\n"; 
$xml_output .= "\t\t<link>http://google.com</link>\n"; 
 for($x = 0 ; $x < mysql_num_rows($resultID) ; $x++){ 
$row = mysql_fetch_assoc($resultID); 
    $xml_output .= "\t<item>\n"; 
    $xml_output .= "<title>" . $row['name'] .".m4v" . "</title>\n"; 
    $xml_output .= "<link>" . $row['link'] . "</link>\n"; 
$xml_output .= "\t<media:content url='" . $row['name'].".m4v" . " type='video/mpg' />\n";
$xml_output .= "\t</item>\n"; 
} 

$xml_output .= "</channel>"; 

echo $xml_output; 

当我注释掉媒体内容时,xml 按预期工作......当我添加媒体时,它什么也不做。

4

1 回答 1

0

您正在添加一个命名空间元素

<media:content …

但没有在任何地方声明命名空间。添加

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

到你的根元素。

另请参阅我对将 while 循环生成的 xml 分配给变量的回答,了解如何使用 DOM 生成带有 DOM 的 XML。

于 2012-06-23T17:58:53.793 回答