Home > PHP > PHPでセッション管理

PHPでセッション管理

  • Posted by: ZARU
  • 2005/05/15
  • PHP

今まさに仕事でやっていて気が付いたメモ。というか、今までなんで使わなかったんだろう?と思ったりもする初歩的な部分 :(

PHPでセッションを使うときに、スクリプトによっては、セッションを混同させたくない場合がある。例えば、a.phpでは $_SESSION['test'] に「a」という文字列を、b.phpでは $_SESSION['test'] に「b」という文字列を保存しておきたい場合だ。

a.phpコード
session_start();
$_SESSION['test'] = 'a';
b.phpコード
session_start();
$_SESSION['test'] = 'b';
c.phpコード
session_start();
print $_SESSION['test'];

これだと、当然a.phpにアクセスすれば、$_SESSION['test']に「a」が、b.phpにアクセスすれば$_SESSION['test']に「b」が入る。

これを住み分けるにはsession_name()を使う。これで、セッションの名前を設定してやれば、それぞれのスクリプトで違ったセッションを使うことができる。

a.phpコード
session_name("aaa");
session_start();
$_SESSION['test'] = 'a';
b.phpコード
session_name("bbb");
session_start();
$_SESSION['test'] = 'b';
c.phpコード
session_name("aaa");
session_start();
print $_SESSION['test'];

こうすると、c.phpにアクセスした場合は、a.phpの$_SESSION変数のみが表示されるようになる。


Comments:0

コメントフォーム:コメントはお気軽にご利用くださいませ。

画像の中に見える文字を入力してください。

Trackbacks:0

TrackBack URL for this entry
http://blog.tofu-kun.org/mt-tb.cgi/20
Listed below are links to weblogs that reference
PHPでセッション管理 from Webプログラマー+WebデザイナーなZARU日記

Home > PHP > PHPでセッション管理

ブログパーツ
Search
Feeds

Return to top