PHP Session

PHP Session

PHP session variable is used to store information about the user session (session), or to change the settings of the user session (session). Session variables store information for a single user and are available to all pages in the application.

PHP Session Variables

When you work on an application on your computer, you open it, make changes, and then close it. It's a lot like a conversation. The computer knows who you are. It knows when you open and close apps. However, on the Internet a problem arises: since HTTP addresses cannot maintain state, the web server has no idea who you are and what you do.

PHP session solves this problem by storing user information on the server for subsequent use (such as user name, purchased items, etc.). However, session information is temporary and will be deleted after the user leaves the site. If you need to store information permanently, you can store the data in a database.

The working mechanism of Session is to create a unique id (UID) for each visitor and store variables based on this UID. The UID is stored in a cookie or passed through the URL.

Starting a PHP Session

Before you can store user information in a PHP session, you must first start the session.

Note: The session_start() function must be placed before the <html> tag:

<?php session_start(); ?>
<html>
<body>
</body>
</html>

The above code will register the user's session with the server so that you can start saving user information, and at the same time, it will User sessions are assigned a UID.

# SESSION's configuration and application

# SESSION_START (); // Initialize session. _SESSION[name]=value; //Configuration

echo $_SESSION[name]; //Use session isset($_SESSION[name]); // Judge unset($_SESSION[name]); // Delete

session_destroy(); // Consume all sessions

Storage Session variables

The correct way to store and retrieve session variables is to use the PHP $_SESSION variable:

<?php
session_start();
// 存储 session 数据
$_SESSION['views']=1;
?>
<html>
<head>
<meta charset="utf-8">
<title> php中文网(php.cn)</title>
</head>
<body>
<?php
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
?>
</body>
</html>

Output:

Views: 1

In the following example, we create a simple page-view counter. The isset() function detects whether the "views" variable has been set. If the "views" variable is set, we increment the counter. If "views" does not exist, create the "views" variable and set it to 1:

<?php
session_start();
if(isset($_SESSION['views']))
{
         $_SESSION['views']=$_SESSION['views']+1;
}
else
{
         $_SESSION['views']=1;
}
echo "浏览量:". $_SESSION['views'];
?>

Destroy Session

If you wish to delete a session For some session data, you can use the unset() or session_destroy() function.
The unset() function is used to release the specified session variable:

<?php
session_start();
if(isset($_SESSION['views']))
{
         unset($_SESSION['views']);
}
?>

You can also completely destroy the session by calling the session_destroy() function:

<?php
session_destroy();
?>

Note: session_destroy() The session will be reset and you will lose all stored session data.

session_id

Session is used to track each user's session and is identified using the SessionID generated by the server to distinguish users. Session is stored in the

server's memory, and SessionID is stored in the server's memory and the client's Cookie. In this way, when the user makes a request, the server

compares the SessionID recorded in the user's cookie with the SessionID in the server memory, thereby finding the Session

corresponding to the user and performing the operation. Therefore, if the client disables Cookies, Session cannot use

to set and read Session

Similar to Cookies, associative arrays can be operated on the server side $_SESSION to read the data in Session

Simpler than Cookie, we can directly operate the $_SESSION array to add and delete array elements to achieve all operations of Session

php.ini configure session

session.save_path = '/leapsoulcn';

The default value is /tmp, which means the session file is saved in the c:/tmp directory.


Continuing Learning
||
<?php session_start(); // 存储 session 数据 $_SESSION['views']=1; ?> <html> <head> <meta charset="utf-8"> <title> php中文网(php.cn)</title> </head> <body> <?php // 检索 session 数据 echo "浏览量:". $_SESSION['views']; ?> </body> </html>
submitReset Code