php 「Cannot send session cache limiter」という警告がでた

2013/05/24

セッションスタートすると「Cannot send session cache limiter – headers already sent」という警告がでた。

session_start()は、ブラウザに何かを出力する前に記述する必要がある。

雑記

画像認証のライブラリを落として設置する際に「session_start()」の記述が必要だった。

<html>
  <head>
    ~中略~
  </head>
  <body>
    ~中略~
    <?php;
      session_start();
    ?>
    ~画像認証関連の記述~
    ~中略~
  </body>
</html>

上記のように画像認証の直前に「session_start();」を記載していた。すると下記のような「PHP Warning」がエラーログに出力されていた。

PHP Warning: session_start(): Cannot send session cache limiter – headers already sent (output started at xxxxxx on line xx

調べるとブラウザに何かを表示してから「session_start();」しているのが原因らしい。ということで下記のように編集

<?php;
  session_start();
?>
<html>
  <head>
    ~中略~
  </head>
  <body>
    ~中略~
    ~画像認証関連の記述~
    ~中略~
  </body>
</html>

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい