2009-06-15 4 views
3

Zend_Feedを使用してRSSフィードを作成しました。Zend_Feedを使用して作成されたRSSフィード - ダウンロードするように促すFirefoxのプロンプトはRSSとして表示されません

結果として得られるXMLがうまくいくように機能しているようです。私の問題は、FirefoxがそれをRSSフィードとして認識せず、代わりに生のXMLをダウンロードするように促すことです。 IEでそれをしよう

は、エラーは、次の余分な情報で「このフィードは、コードエラーが含まれています」を与える:

Invalid xml declaration. Line: 2 Character: 3

< ? xml version="1.0" encoding="UTF-8" ?>

すべてのヘルプは大歓迎します。

+0

<と?の間にスペースを入れます。そうでなければこの行は私のポストに表示されていませんでした。 – William

答えて

2

xml宣言は、出力の最初の絶対行になければなりません。私。 xml-declarationタグの前に空白行や空白を入れないでください。

これは有効です。

<?xml version="1.0" encoding="UTF-8" ?> 

これではありません:<?xml version="1.0" encoding="utf-8"?>はフィードファイルの最初の行であるかどうかを

<?xml version="1.0" encoding="UTF-8" ?> 
+0

ありがとうございます - 最初は空白行があるので、これは問題のようです。 Zendがなぜそれをやっているのか分かりません... – William

+0

Zendでないかもしれません - あなたのPHPに間違った空白がないことを確認してください。 – kranzky

+0

あなたは正しいですか?PHPファイルの最後にある閉じた後の空白行が問題を引き起こしているようです。どうもありがとう。 – William

1

をチェック。空の行やスペースはありません!

0

PHPが通知/警告などを吐いている場合、フィードが不正な形式になります。フィードをテストに送信される前にゼロにはerror_reportingを設定してみてください:親指の

error_reporting(0); 
+0

または、エラー報告を最大に設定し、問題を隠すのではなく、問題を修正します。エラー報告(E_ALL | E_STRICT); –

0

良いルールをPHPのクラスファイルと、このような、決して?>あなたのクラスファイルを使用している場合。後で通常の出力を行うテンプレートタイプのファイルでは、?>を使用してください。すべての主要なパッケージは、上記の推論のためにこれを行います。

関連する問題