PHPエラー「PHP Warning: session_start(): Cannot send session cookie - headers already sent」の原因と解決方法

session_start()関数を使用する時、
PHP Warning: session_start(): Cannot send session cookie - headers already sent in /nobuneko/test.php on line 5
といったエラーが出力される場合がある。
session_start()関数よりも前にPHPで何かを出力している場合に上記のようなエラーが出る。
session_start()よりも前にPHPで改行コード、HTMLタグ等を出力してるのであれば、それらを削除すれば解決することがある。

全く同一のプログラムファイルを使用しているはずなのに、プログラムを動作させる環境が異なるだけで上記のエラーメッセージが出るなど、どうしても原因が分からない場合、とりあえずエラーメッセージを削除したいだけであれば、session_start()関数の左に@マークを付けるとエラーメッセージを出さないようにすることはできる。

session_start();

@session_start();
この方法は根本的な問題解決にはならないかもしれないが・・・。

前へ

PHPエラー「Notice: Array to string conversion」の原因と解決方法

次へ

震度1の地震が発生 (愛媛県松山市、2010年10月3日16時58分頃)