
200
10
章 ユーザの記憶:クッキーとセッション
1 つのクッキーは1 つの情報の追跡にとても長けています。多くの場合、ユーザに関する詳細
(ユーザのショッピングカートの中身など)を追跡する必要がありますが、これに複数のクッキー
を使うと面倒ですが、PHP のセッション機能がこの問題を解決します。
セッションはクッキーを使って個々のユーザを区別し、サーバ上の各ユーザの一時的なデータ
を保持できます。このデータは複数のリクエストで存続します。あるリクエストでユーザのセッ
ションに変数を追加できます(ショッピングカートに商品を入れるなど)。そして、次のリクエス
トでセッションにあるものを取得できます(カートにあるすべてを列挙する必要があるときの注文
のチェックアウトページなど)。「10.2セッションの有効化」ではセッションの開始方法を説明し、
「10.3情報の格納と取得」ではセッション操作の詳細を解説します。
10.1
クッキーの操作
クッキーを設定するには、
setcookie()
関数を使います。この関数は、クッキーの名前と値を
覚え以降のリクエスト時にサーバに送り返すようにWeb クライアントに伝えます。例 10-1 は、
userid
という名前のクッキーに
ralph
という値を設定します。
例
10-1
クッキーの設定
setcookie('userid','ralph');
PHP プログラムから過去に設定したクッキーを読み出すには、
$_COOKIE
スーパーグローバル配
列を使います。例10-2 は