[PHP]:Warning: Cannot modify header information - headers already sent by

2008/06/17 21:46:24
カテゴリ:Web > PHP

先日、会社をやめちゃったプログラマ(初心者)からある案件を引き継ぎました。
PHP + MySQL(+ JavaScript使いまくり!)。
そしたら、バグの雨あられ。

で、今日はまったのが、このエラー。

Warning: Cannot modify header information - headers already sent by (output started at hogehoge.php:7) in unyaunya.php on line 28

う~ん、header情報がすでに出力されてるって言っても、「hogehoge.php」に相当するファイルのどこでも「header("Content-Type:・・・);」みたいなことはやってる形跡がありません。

しかし、やっぱりヒントは、「header」なのでした。
「hogehoge.php」で定義されてるfunctionの前に、改行やら、タブやらが転がってました。
つまり、改行やら、タブやらが「出力」されてしまっていて、「unyaunya.php」で吐きたいheader情報が上書きできてなかったみたいです。

↓これは駄目。

<?
	
	function hoge(){
	}
?>

↓当然これはOK。

<?
function hoge(){
}
?>

普段、いきなりファイルの冒頭でインデントなんてしたことなかったので、分かりませんでした。
これも勉強!、ですかね?