PHP 매뉴얼
이전 |  | 다음

# session_register

(PHP 4 , PHP 5)

session_register -- Register one or more global variables with the current session

## Description

bool session_register ( mixed name [, mixed ...])

session_register() accepts a variable number of arguments, any of which can be either a string holding the name of a variable or an array consisting of variable names or other arrays. For each name, session_register() registers the global variable with that name in the current session.

경고
If you want your script to work regardless of register_globals, you need to instead use the $_SESSION array as `$_SESSION` entries are automatically registered. If your script uses session_register(), it will not work in environments where the PHP directive register_globals is disabled.

> register_globals: 중요 경고: PHP 4.2.0부터는 PHP 설정 register_globals의 기본값은 off입니다. PHP 커뮤니티에서는, 이 설정에 의존하지 않는 superglobals와 같은 다른 방법을 이용하기를 권장합니다.

경고
This registers a global variable. If you want to register a session variable from within a function, you need to make sure to make it global using the global keyword or the `$GLOBALS[]` array, or use the special session arrays as noted below.

경고
If you are using `$_SESSION` (or `$HTTP_SESSION_VARS`), do not use session_register(), session_is_registered(), and session_unregister().

This function returns `TRUE` when all of the variables are successfully registered with the session.

If session_start() was not called before this function is called, an implicit call to session_start() with no parameters will be made. `$_SESSION` does not mimic this behavior and requires session_start() before use.

You can also create a session variable by simply setting the appropriate member of the `$_SESSION` or `$HTTP_SESSION_VARS` (PHP < 4.1.0) array.

`<?php // Use of session_register() is deprecated $barney = "A big purple dinosaur."; session_register("barney"); // Use of $_SESSION is preferred, as of PHP 4.1.0 $_SESSION["zim"] = "An invader from another planet."; // The old way was to use $HTTP_SESSION_VARS $HTTP_SESSION_VARS["spongebob"] = "He's got square pants."; ?>`

> 참고: It is currently impossible to register resource variables in a session. For example, you cannot create a connection to a database and store the connection id as a session variable and expect the connection to still be valid the next time the session is restored. PHP functions that return a resource are identified by having a return type of `resource` in their function definition. A list of functions that return resources are available in the resource types appendix.

> If `$_SESSION` (or `$HTTP_SESSION_VARS` for PHP 4.0.6 or less) is used, assign values to `$_SESSION`. For example: $_SESSION['var'] = 'ABC';

See also session_is_registered(), session_unregister(), and $_SESSION.

이전 | 처음으로 | 다음
session_regenerate_id | 위로 | session_save_path