首页 / 网页编程 / PHP / PHP中Session的作用
PHP中Session的作用2010-10-21PHP session变量的作用是:存储用户的session信息,或者改变用户的session设置。Session变量储存了一个单一用户的信息,它可以被所有的页面使用。PHP Session变量当你在自己的计算机上运行一个应用程序时,你打开它,对他做一些改变,然后关闭它,这个过程和session很相似。计算机知道你是谁,知道你什么时候启动了应用程序,什么时候关闭了应用程序。但在互联网上,会出现这样一个问题:因为HTTP地址不可能永久的保留下来,所以服务器很难辨认你是谁,你在干什么。PHP Session允许你在服务器上储存用户信息(如:用户名[username]、购物清单[shopping]等等),从而解决了这个问题。然而,session信息也是临时存在的,当你离开这个网站时,他会被自动删除。如果你想永久保留这些信息,你可以尝试着把它储存在数据库中。Session通过为每个访问者创建一个独立的ID(UID)并储存基于UID的变量来运行。UID既存储在cookie中,又在URL中展现出来。启动PHP Session在你将用户信息存入PHP Session之前,你必须先启动Session。注意:session_start()函数必须写在<html>标签之前:<?php session_start(); ?>
<html>
<body></body>
</html>上述代码将在服务器上注册一个用户的session,允许你储存用户信息,并为用户session指定一个UID。储存一个Session变量储存和获取session变量的最佳方法是使用PHP $_SESSION变量:<?php
session_start();
// store session data
$_SESSION["views"]=1;
?><html>
<body><?php
//retrieve session data
echo "Pageviews=". $_SESSION["views"];
?></body>
</html>结果:Pageviews=1在上述案例中,我们建立了一个简易的页面计数器。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()函数。Unset()函数的作用是释放指定的session变量:<?phpunset($_SESSION["views"]);
?>你也可以使用session_destroy()函数将session全部删除:<?php
session_destroy();
?>注意:session_destroy()会重新设置你的session,你会丢失所有已保存的session数据。