Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

session_register(3) [php man page]

SESSION_REGISTER(3)							 1						       SESSION_REGISTER(3)

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

SYNOPSIS
bool session_register (mixed $name, [mixed $...]) DESCRIPTION
session_register(3) 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(3) registers the global variable with that name in the cur- rent session. 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."; ?> If session_start(3) was not called before this function is called, an implicit call to session_start(3) with no parameters will be made. $_SESSION does not mimic this behavior and requires session_start(3) before use. Warning This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. PARAMETERS
o $name - A string holding the name of a variable or an array consisting of variable names or other arrays. o $... - RETURN VALUES
Returns TRUE on success or FALSE on failure. NOTES
Caution 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(3), it will not work in environments where the PHP directive reg- ister_globals is disabled. Note register_globals: important note As of PHP 4.2.0, the default value for the PHP directive register_globals is off. The PHP community discourages developers from relying on this directive, and encourages the use of other means, such as the superglobals. Caution 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. Caution If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(3), session_is_registered(3), and session_unregis- ter(3). Note 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(3), session_unregister(3), $_SESSION. PHP Documentation Group SESSION_REGISTER(3)

Check Out this Related Man Page

SESSIONHANDLERINTERFACE(3)						 1						SESSIONHANDLERINTERFACE(3)

The SessionHandlerInterface class

INTRODUCTION
SessionHandlerInterface is an interface which defines a prototype for creating a custom session handler. In order to pass a custom session handler to session_set_save_handler(3) using its OOP invocation, the class must implement this interface. Please note the callback methods of this class are designed to be called internally by PHP and are not meant to be called from user-space code. CLASS SYNOPSIS
SessionHandlerInterface SessionHandlerInterface Methods o abstractpublic bool SessionHandlerInterface::close (void ) o abstractpublic bool SessionHandlerInterface::destroy (string $session_id) o abstractpublic bool SessionHandlerInterface::gc (string $maxlifetime) o abstractpublic bool SessionHandlerInterface::open (string $save_path, string $name) o abstractpublic string SessionHandlerInterface::read (string $session_id) o abstractpublic bool SessionHandlerInterface::write (string $session_id, string $session_data) Example #1 Example using SessionHandlerInterface The following example provides file based session storage similar to the PHP sessions default save handler $files. This example could easily be extended to cover database storage using your favorite PHP supported database engine. Note we use the OOP prototype with session_set_save_handler(3) and register the shutdown function using the function's parameter flag. This is generally advised when registering objects as session save handlers. <?php class MySessionHandler implements SessionHandlerInterface { private $savePath; public function open($savePath, $sessionName) { $this->savePath = $savePath; if (!is_dir($this->savePath)) { mkdir($this->savePath, 0777); } return true; } public function close() { return true; } public function read($id) { return (string)@file_get_contents("$this->savePath/sess_$id"); } public function write($id, $data) { return file_put_contents("$this->savePath/sess_$id", $data) === false ? false : true; } public function destroy($id) { $file = "$this->savePath/sess_$id"; if (file_exists($file)) { unlink($file); } return true; } public function gc($maxlifetime) { foreach (glob("$this->savePath/sess_*") as $file) { if (filemtime($file) + $maxlifetime < time() && file_exists($file)) { unlink($file); } } return true; } } $handler = new MySessionHandler(); session_set_save_handler($handler, true); session_start(); // proceed to set and retrieve values by key from $_SESSION PHP Documentation Group SESSIONHANDLERINTERFACE(3)
Man Page