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();
この方法は根本的な問題解決にはならないかもしれないが・・・。