PHP学习笔记-->013 PHP Sessions

PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,而且可供应用程序中的全部页面使用。php


PHP Session 变量

因为 HTTP 地址不能维持状态,经过在服务器上存储用户信息以便随后使用,PHP session 解决了这个问题。不过, 会话信息是临时的,在用户离开网站后将被删除。若是须要永久储存信息,能够把数据存储在数据库中。

Session 的工做机制是:为每一个访问者建立一个惟一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或经过 URL 进行传导。html

开始 PHP Session

在把用户信息存储到 PHP session 中以前,首先必须启动会话。数据库

注释:session_start() 函数必须位于 <html> 标签以前:服务器

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

上面的代码会向服务器注册用户的会话,开始保存用户信息,同时会为用户会话分配一个 UID。cookie

存储 Session 变量

使用 PHP $_SESSION存储和取回 session 变量:session

<?php
session_start();
// store session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>

输出:ide

Pageviews=1

eg:函数

建立 page-view 计数器。isset() 函数检测是否已设置 "views" 变量。若是已设置 "views" 变量,累加计数器。若是 "views" 不存在,则建立 "views" 变量,并把它设置为 1:网站

<?php
session_start();

if(isset($_SESSION['views']))
  $_SESSION['views']=$_SESSION['views']+1;

else
  $_SESSION['views']=1;
echo "Views=". $_SESSION['views'];
?>

终结 Session

删除某些 session 数据,能够使用 unset() 或 session_destroy() 函数。spa

unset() 函数用于释放指定的 session 变量:

<?php
unset($_SESSION['views']);
?>

也能够经过 session_destroy() 函数完全终结 session:

<?php
session_destroy();
?>

注释:session_destroy() 将重置 session,将失去全部已存储的 session 数据。

相关文章
相关标签/搜索