session_register
説明
bool session_register ( mixed name [, mixed ...] )session_register() の引数の数は可変であり、 各引数は変数名を保持する文字列または変数名からなる配列 とすることが可能です。 各変数名が処理される毎に、 session_register() は、その変数名のグローバル変数を現在のセッションに登録します。
| 注意 |
|
register_globals
を 考慮することなくスクリプトを書きたい場合には、
$_SESSION
配列を 代わりに使用する必要があります。 |
register_globals: 重要な注意: PHP 4.2.0 以降、PHP ディレクティブ register_globals のデフォルト値は off となっています。 また、このディレクティブは PHP 6.0.0 で完全に削除される予定です。 PHP コミュニティは、ユーザがこのディレクティブの設定に依存せず、 superglobals のような他の手段を使用することを推奨します。
| 注意 |
|
この関数は、 global 変数を登録します。セッショ ン変数を関数の内部で登録したい場合、 global() を用いてその変数をグローバルとするか、下記のようにsession配列を 使用してください。 |
| 注意 |
|
|
この関数は全ての変数のセッションへの登録に成功した場合に TRUE を 返します。
この関数をコールする前に
session_start()
をコー ルしていない場合、暗黙のうちに引数を付けずに
session_start()
がコールされます。
$_SESSION
を使う場合はこの動作とは違い、 使用前に必ず
session_start()
をコールする必要があります。
配列$HTTP_SESSION_VARSまたは$_SESSION (PHP >= 4.1.0)の適当なメン バに設定をするだけでもセッション変数を作成することが可能です。
<?php
|
注意: セッションにリソース変数を登録することは現在できません。例えば、 データベースへの接続を生成し、接続IDをセッション変数として登録し、 セッションが回復された時点で、接続が有効であることを期待すること はできません。リソースを返すPHP関数は、その関数定義に resource 型の返り値を有することが示されている。 リソースを返す関数のリストは、付録 resource types で見ることができま す。
$_SESSION (またはPHP 4.0.6以前は$HTTP_SESSION_VARS)が使用されて いる場合、$_SESSIONに変数を代入してください。 すなわち、$_SESSION['var'] = 'ABC';
session_is_registered() , session_unregister() , $_SESSION も参照してください。