Home > Article > Backend Development > What does session_start() mean in php
In PHP, session_start() means "start session" and is a built-in function used to create a new session or reuse an existing session; the syntax is "session_start($array);", successfully started The session returns true, otherwise it returns false.
The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer
In php, session_start() means "start a conversation".
Syntax:
session_start(array $options = array()): bool
The session_start() function will create a new session or reuse an existing session. If a session ID is submitted via GET or POST, or using a cookie, the existing session will be reused.
Parameters:
$options
: This parameter is an associative array, if provided, the session will be overwritten with the items in it Configuration items in configuration instructions. The keys in this array need not contain the session. prefix.
In addition to the regular session configuration instructions, you can also include read_and_close options in this array. If the value of this option is set to true, the session file will be closed immediately after reading, thus avoiding unnecessary file locks when the session data has not changed.
When the session starts automatically or manually through session_start(), PHP internally calls the open and read callback functions of the session manager. The session manager may be the PHP default, or it may be provided by an extension (SQLite or Memcached extension), or it may be a user-defined session manager set by session_set_save_handler(). With existing session data (stored using a special serialization format) returned by the read callback function, PHP will automatically deserialize the data and populate the $_SESSION super global variable.
To use a named session, call the session_name() function before calling the session_start() function.
If the session.use_trans_sid option is enabled, the session_start() function will register an internal output manager, which completes the URL rewriting.
If the user uses the ob_start() and ob_gzhandler functions together, the order in which the functions are called will affect the output results. For example, the ob_gzhandler function must be called to complete registration before starting a session.
Return value: Returns true if the session is successfully started, false otherwise.
Example 1:
<?php // page1.php session_start(); echo 'Welcome to page #1'; $_SESSION['favcolor'] = 'green'; $_SESSION['animal'] = 'cat'; $_SESSION['time'] = time(); // 如果使用 cookie 方式传送会话 ID echo '<br /><a href="page2.php">page 2</a>'; // 如果不是使用 cookie 方式传送会话 ID,则使用 URL 改写的方式传送会话 ID echo '<br /><a href="page2.php?' . SID . '">page 2</a>'; ?>
After requesting page1.php, the second page page2.php will contain session data. Please see the Session Reference for more information about session ID transmission, where the reference page has a detailed description of the constant SID.
Example 2: Overwriting Cookie timeout setting
<?php // 设置 cookie 的有效时间为 1 天 session_start([ 'cookie_lifetime' => 86400, ]); ?>
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of What does session_start() mean in php. For more information, please follow other related articles on the PHP Chinese website!