PHP complete se...login
PHP complete self-study manual
author:php.cn  update time:2022-04-15 13:53:54

PHP Session


PHP session variables are 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 with 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.


Start PHP Session

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

Note: session_start() function must be located 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 Saving of user information can begin and a UID will be assigned to the user session.

Storing 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 want to delete 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() will reset the session and you will lose all stored session data.

Related topics

php session

php.cn