PHPのheaderエラー

 header("Location: の前に、echoやprint などをしてしまうとエラーになるのですが、
変な改行でもエラーになる。
しかし、
\<\?PHP header("Location:×××××"); \?\>
でもエラー。

もともと変な作りをしていた。
ブラウザのBACKや、ダイレクトにアクセスされた場合、トップページに強制で戻るように、require_onceでファイルを読み込んでいたのですが...

どうやら、ファイルの文字コードやら何かが悪かったらしい。
そのため、\<\?PHP \?\>でもエラー。空ファイルでもエラー。
ファイルを作りなおして、文字を打ち込んだら、エラーが消えた。
う〜ん、不思議だ。