As of session_start()

PHP の session_start() について。
session_start() を複数回呼ぶとどうなるの?というお話。

日本語のマニュアルにはこう書かれてます。

PHP: session_start – Manual

注意: PHP 4.3.3では、セッションが既に開始されている状態で session_start()をコールすると E_NOTICEレベルのエラーを発生させます。 またその場合二度目のセッションスタートは単に無視されます。

PHP 4.3.3 では?4.3.3 限定?それ以降は?

と思って英語版マニュアルを見てみると・・・

PHP: session_start – Manual

Note: As of PHP 4.3.3, calling session_start() while the session has already been started will result in an error of level E_NOTICE. Also, the second session start will simply be ignored.

As of PHP 4.3.3

やっぱり 4.3.3 だけ?

と思って As of の意味を調べてみると

スペースアルク

~現在{げんざい}で、(~を基点{きてん}として)それ以後{いご}は

なるほど。PHP 4.3.3 以降は、ってことね。

というわけで、PHP 4.3.3 以降では、
session_start() を複数回呼んでも2回目以降は単に無視されるから、
既に session_start() が呼ばれてるかどうかは気にせずに、
$_SESSION にアクセスする前はとりあえず session_start() を呼ぶ。というスタイルで問題なし。

という事が分かりました。めでたし。

“As of session_start()” への 2 件のフィードバック

  1. ピンバック: JE no hitori chat
  2. qz1wwr3ao10ded22

    テストです。脈絡無くガス爆発です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です