php和XML声明只允许在文档的开头

  • 本文关键字:文档 开头 XML 声明 php php xml rss
  • 更新时间 :
  • 英文 :


此页面包含以下错误:第6列第3行错误:仅在文档开头允许XML声明下面是页面的渲染,直到第一个错误。

<?php
//index.php
include '../config.php';
header("Content-type: text/xml"); 
echo '<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/">';
echo '<channel>';
echo '<title>janbak RSS Feed</title>';
echo '<link>http://www.janbak.net</link>';
echo '<description>RSS Description</description>';
echo '<language>en-us</language>';
echo '<lastBuildDate>2021-8-11T04:44:16Z</lastBuildDate>';
$sql="SELECT * FROM product WHERE adds='yes' ORDER BY id DESC LIMIT 10" ;
$result = $db->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo '<item>';
echo '<title>'.$row["tetl"].'</title>';
echo '<link>https://www.janbak.net/product.php?view='.$row["add_number"].'</link>';
echo'<guid>'.md5($row["id"]).'</guid>';
echo '<pubDate>'.date('D, d M Y H:i:s').' GMT</pubDate>';
echo '<description>'.$row['wsf'].'</description>';
echo '<content:encoded>';
echo '<enclosure url="https://www.janbak.net/panel/uploads_adds/'.$row["img"].'" />';
echo '</item>';
}}

echo '</channel>';
echo '</rss></xml>';?>

这个问题是XML通过PHP输出和浏览器解释的固有问题,而不是特定于模块的问题。在google上搜索它会得到两个原因:PHP开始标记之前的空白或PHP结束标记之后的空白。要解决这个问题,请确保所有文件和所有包含的文件(通过include/require语句或通过use语句附加)在开始PHP标记之前没有空白,并且根本没有结束PHP标记,因为它已经过时了。

最新更新