0
XML Parsing Error: no element found
Location: http://localhost/rss/
Line Number 1, Column 1:

ただし、xml をhttp://validator.w3.org/feed/check.cgiに貼り付けると、フォーマット エラーは表示されません。

以下の完全なコード:

index.php

<?php
    header("Content-Type: application/xml; charset=ISO-8859-1");


$details = '<?xml version="1.0" encoding="ISO-8859-1" ?>
            <rss version="2.0">
                <channel>
                            <title>hehe</title>
                            <link>http://www.google.com</link>
                            <description>gaga</description>
                </channel>
            </rss>
            ';
echo $details;

?>
4

3 に答える 3

0

PHP ファイルの先頭に不要な BOM がないことを確認してください。Windows の一部の (愚かな、壊れた) エディターは、UTF-8 として保存するときに、UTF-8 でエンコードされた BOM をファイルの先頭にドロップします。これは無意味であり (UTF-8 にはバイト順の問題がないため)、望ましくありません (バイト指向の処理ツールとの互換性が損なわれるため)。

出力を ISO-8859-1 として提供しているため、最初に UTF-8 でエンコードされた BOM は 8859-1 シーケンスになります。XML の場合、これは許可されていないルート要素の外側の非空白文字データになります。

これが起こっている場合は、PHP ファイルを 'Western' (cp1252) エンコーディングとして保存するか、'UTF-8 without BOM' エンコーディングで保存して修正してください。

于 2009-09-28T10:18:28.263 に答える
0

解析エラーを報告しているのは誰ですか? コードを自分のマシンに配置したところ、期待どおりに機能しました。Firefox がフィードの購読を要求しました。

于 2009-09-28T10:07:44.083 に答える
0

XML 宣言の前に改行や空白がないように十分に注意する必要があります。1 つの改行でも問題が発生します。

于 2009-09-28T10:08:00.860 に答える