session_start()が二重に呼び出されるケースの対策

ページをいくつかに分割(menu/header/main/footer等)し、それぞれを読み込んで利用している際、session_start()が二重に呼び出されて警告が出る時の対策の覚書き。

session_status() を使うと、現在のセッションの状態を取得できるので、セッションが存在するかどうかを確認すればよい。

<br />
if (session_status() == PHP_SESSION_NONE) {<br />
    session_start();<br />
    header('Expires: -1');<br />
    header('Cache-Control:');<br />
    header('Pragma:');<br />
}<br />