PHP

【対処法】Notice: A session had already been started

Notice: A session had already been startedのエラーの原因と対処法を解説します。

Notice: A session had already been startedの原因と対処法

今回はNotice: A session had already been startedのエラー原因と対処法を解説します。

Notice: A session had already been startedのエラーの原因

こちらのエラーの原因ですが、すでにセッションが開始されている時にsession_start()をすることはできません。

極端な例ですが、簡単に言えば下記のようなことです。

<?php
session_start();

session_start();

また、特によくあるケースですが、php.iniの設定でsession.auto_startが有効になっていると、コード側でsession_start()を記載しなくても自動的にセッションが開始していることがありますので注意してください。

Notice: A session had already been startedの対処法

この場合ですが、session_start()が実行している箇所を確認して、下記のコードに変更してみてください。

<?php
if(!isset($_SESSION)){
    session_start();
}
?>