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 |
register_globals 重要说明: 自 PHP 4.2.0 起,PHP 中的选项 register_globals 的默认值被设为 off,并且自 PHP 6.0.0 起会被彻底去除。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 |
小心 |
If you are using |
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 |
注意: 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.