session
PHP session变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的
session变量
当在计算机上操作某个应用程序(打开,修改,关闭)。这就很想一次会话(session)。计算机知道你是谁,何时打开和关闭程序。但是当网络出现问题时,HTTP地址就无法保持状态,Web服务器就不知道你是谁和干了什么
session就是为了解决这个问题而存储在服务器上的用户信息,方便用户使用而产生的
session的工作机制是为每一个访客创建一个唯一的id,基于这个UID来存储变量,UID存储到cookie中,或通过URL传导
启动session
在存储到session之前,必须启动会话
session_start()函数必须位于<html>
标签之前
1 | session_start(); |
该代码会向服务器注册用户的会话,以便可以开始保存用户信息,同时会分配一个UID
存储session变量
存储和取回session变量是使用$_SESSION变量1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
session_start();
// 存储 session 数据
$_SESSION['views']=1;
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
// 检索 session 数据
echo "浏览量:". $_SESSION['views'];
</body>
</html>
运行结果1
浏览量:1
销毁session
希望删除某些session变量,可以使用unset()或session_destroy()函数
unset()函数用于释放指定的session变量1
2
3
4
5
6
7
session_start();
if(isset($_SESSION['views']))
{
unset($_SESSION['views']);
}
也可以通过调用session_destroy()函数彻底销毁session1
2<?php
session_destroy();
总结
1.使用session前,需要在<html>
标签之前使用session_start()函数
2.使用session_start()函数之后,服务器便会注册用户的会话,并开始保存用户信息,同时会分配UID
3.存储session变量使用$_SESSION直接创建和赋值
4.unset()可以销毁指定的session变量,而调用session_destroy()便会失去所有已存储的session数据